1,Word文件转TXT文件
这里是用了一个apache的poi工具,可以在http://poi.apache.org/下载它的jar包,将poi-3.1-FINAL-20080629.jar,poi-contrib-3.1-FINAL-20080629.jar,poi-scratchpad-3.1-FINAL-20080629.jar三个文件复制到工程的WEB-INF\lib目录下。
解析的代码如下:
/**
* 将Word文件转换成txt文本文件
* @author annlee
*
* @param fis,源文件的文件输入流
* @param outputPath,输出文件的路径,这里指文件夹的路径
* @param outputFileName,输出文件的文件名,包括文件后缀名
* @return 转换成功返回字符串"OK";转换失败返回失败原因.
*/
public static String convertWordToTxt(FileInputStream fis,
String outputPath, String outputFileName) {
try {
WordExtractor extractor = new WordExtractor(fis);
String str = extractor.getText().trim(); // 获取Word文件中的字符
String outputFile = outputPath + outputFileName + ".txt"; // 组装输出TXT文件的绝对路径
FileOutputStream fos = new FileOutputStream(outputFile);
fos.write(str.getBytes());
fos.close();
} catch (FileNotFoundException e) {
return "文件不存在!";
} catch (IOException e) {
return "文件读写错误!";
}
return "OK";
}
2,PDF文件转TXT文件
这里是用了一个PDFBox工具,可以在http://www.netlikon.de/docs/PDFBox-0.7.2/lib/下载它的jar包,将PDFBox-0.7.2-log4j.jar,PDFBox-0.7.2.jar这两个文件复制到工程的WEB-INF\lib目录下。
这里多说一下,如果要通过程序生成PDF文件,有个工具很好用:iText是一个能够快速产生PDF文件的java类库。iText的java类对于那些要产生包含文本,表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。使用iText与PDF能够使你正确的控制Servlet的输出。
解析的代码如下:
/**
* 将PDF文件转换成txt文本文件
* @author annlee
*
* @param fis,源文件的文件输入流
* @param outputPath,输出文件的路径,这里指文件夹的路径
* @param outputFileName,输出文件的文件名,包括文件后缀名
* @return 转换成功返回字符串"OK";转换失败返回失败原因.
*/
public static String convertPdfToTxt(FileInputStream fis,
String outputPath, String outputFileName) {
// 是否排序
boolean sort = false;
// 开始提取页数
int startPage = 1;
// 结束提取页数
int endPage = Integer.MAX_VALUE;
try {
// 内存中存储的PDF Document
PDDocument document = PDDocument.load(fis);
String outputFile = outputPath + outputFileName + ".txt"; // 组装输出TXT文件的绝对路径
FileOutputStream fos = new FileOutputStream(outputFile);
OutputStreamWriter writer = new OutputStreamWriter(fos);
// PDFTextStripper来提取文本
PDFTextStripper stripper = new PDFTextStripper();
// 设置是否排序
stripper.setSortByPosition(sort);
// 设置起始页
stripper.setStartPage(startPage);
// 设置结束页
stripper.setEndPage(endPage);
// 调用PDFTextStripper的writeText提取并输出文本
stripper.writeText(document, writer);
fos.close();
writer.close();
} catch (FileNotFoundException e) {
return "文件不存在!";
} catch (IOException e) {
return "文件读写错误!";
}
return "OK";
}
3,PPT文件转TXT文件
这里也用的是apache的poi工具,解析的代码如下:
/**
* 将PPT文件转换成txt文本文件
*
* @author annlee
*
* @param fis,源文件的文件输入流
* @param outputPath,输出文件的路径,这里指文件夹的路径
* @param outputFileName,输出文件的文件名,包括文件后缀名
* @return 转换成功返回字符串"OK";转换失败返回失败原因.
*/
public static String convertPptToTxt(FileInputStream fis,
String outputPath, String outputFileName) {
StringBuffer content = new StringBuffer();
try {
SlideShow ss = new SlideShow(new HSLFSlideShow(fis));// 建立SlideShow
Slide[] slides = ss.getSlides();// 获得每一张幻灯片
for (int i = 0; i < slides.length; i++) {
TextRun[] t = slides[i].getTextRuns();// 为了取得幻灯片的文字内容,建立TextRun
for (int j = 0; j < t.length; j++) {
content.append(t[j].getText());// 这里会将文字内容加到content中去
}
content.append(slides[i].getTitle()); //这里会将标题加到content中去
}
String outputFile = outputPath + outputFileName + ".txt"; // 组装输出TXT文件的绝对路径
FileOutputStream fos = new FileOutputStream(outputFile);
fos.write(content.toString().getBytes());
fos.close();
} catch (FileNotFoundException e) {
return "文件不存在!";
} catch (IOException e) {
return "文件读写错误!";
}
return "OK";
}
3,EXCEL文件转TXT文件
这里也用的是apache的poi工具,解析的代码如下:
/**
* 将EXCEL文件转换成txt文本文件
*
* @author annlee
*
* @param fis,源文件的文件输入流
* @param outputPath,输出文件的路径,这里指文件夹的路径
* @param outputFileName,输出文件的文件名,包括文件后缀名
* @return 转换成功返回字符串"OK";转换失败返回失败原因.
*/
public static String convertXlsToTxt(FileInputStream fis,
String outputPath, String outputFileName) {
StringBuffer content = new StringBuffer();
try {
HSSFWorkbook workbook = new HSSFWorkbook(fis);// 创建对Excel工作簿文件的引用
for (int numSheets = 0; numSheets < workbook.getNumberOfSheets(); numSheets++) {
if (null != workbook.getSheetAt(numSheets)) {
HSSFSheet aSheet = workbook.getSheetAt(numSheets);// 获得一个sheet
for (int rowNumOfSheet = 0; rowNumOfSheet <= aSheet
.getLastRowNum(); rowNumOfSheet++) {
if (null != aSheet.getRow(rowNumOfSheet)) {
HSSFRow aRow = aSheet.getRow(rowNumOfSheet); // 获得一个行
for (short cellNumOfRow = 0; cellNumOfRow <= aRow
.getLastCellNum(); cellNumOfRow++) {
if (null != aRow.getCell(cellNumOfRow)) {
HSSFCell aCell = aRow.getCell(cellNumOfRow);// 获得列值
if (aCell.getCellType() == 1) {
content.append(aCell
.getStringCellValue());
} else if (aCell.getCellType() == 0) {
content.append(Double.toString(aCell
.getNumericCellValue())
+ ",");
}
}
}
}
}
}
}
String outputFile = outputPath + outputFileName + ".txt"; // 组装输出TXT文件的绝对路径
FileOutputStream fos = new FileOutputStream(outputFile);
fos.write(content.toString().getBytes());
fos.close();
} catch (FileNotFoundException e) {
return "文件不存在!";
} catch (IOException e) {
return "文件读写错误!";
}
return "OK";
}
这里生成的TXT文件中可能包含着一些另类的字符,我们可以在写文件之前将这些字符去掉:
/**
* 去掉字符串中多余的字符
*/
public static String washString(String str){
byte[] buffer = str.getBytes();
byte[] buffernew = new byte[buffer.length];
int j = 0;
for(int i =0 ; i< buffer.length; i++){
if((buffer[i] >=20 )||(buffer[i] < 0 )) {
buffernew[j++] = buffer[i];
}
}
String newStr = new String(buffernew);
newStr = newStr.replaceAll("FORMTEXT", "");
return newStr.trim();
}
分享到:
相关推荐
Word转换成PDF转换器能批量转换微软办公软件格式到PDF, 节省时间, 同时支持多核CPU,让你转换的过程中更快捷更有效。 Word转换成PDF转换器可以设置个别或所有输出PDF打开密码。 Word转换成PDF转换器是一个多语种的...
PDF转换软件, 可以轻松将pdf文档转换成word, txt, html 等格式
批量Word转PDF转换器是一款Windows平台下的Word转PDF转换工具,它可以方便快捷地一次性将多个Word文件转换成PDF格式文件。由于软件抛弃了传统虚拟打印生成PDF的方法,而采用直接分析WORD文件并转换到PDF的技术,因此...
word转换pdf、excel转换pdf、jpeg转换pdf等的工具PDF转换器注册码
PDF转换器可方便的将各种流行的文件格式(Word,Excel,TXT等)转换成PDF文件,也可以将PDF文件转换为各种流行文件格式。 PDF转换器支持Word, Doc, RTF, TXT, Excel XLS, PowerPoint PPT以及所有可打印格式,方便将...
在1.3版本中新增加了pdf转word的功能,可以实现pdf与word的相互转换,界面简单,功能稳定,支持批量转换,操作起来非常方便,支持多种流行文档格式之间转换,比如word转成pdf,rtf转换成pdf,txt转成pdf,html转换成pdf...
将 word 格式文档转换为 pdf 格式文件
把PDF文档转换成word文档的转换器,很好用的,希望能给大家带来方便。
Word、PDF、PPT、TXT 格式之间的转换方法
ePDF2Word 2.5破解 PDF转换成WORD txt且会保持PDF原有格式
pdfword转换器支持批量转换pdfword转换器支持批量转换pdfword转换器支持批量转换pdfword转换器支持批量转换pdfword转换器支持批量转换pdfword转换器支持批量转换pdfword转换器支持批量转换pdfword转换器支持批量转换...
Word,PDF,PPT,TXT之间的转换方法
很易用的PDF格式转换器,支持PDF转换Word/DOC、PDF转换图片格式( JPG/BMP/GIF/PNG/TIF)、PDF转换TXT、PDF转换HTML、PDF转换Flash/SWf
易捷PDF转换成Word工具是一款专业的PDF转Word工具软件,易捷pdf转word转换器能快速准确的将您PDF文档中的文字及图片提取出来,转换保存成Word格式,同时很好的让原有PDF中的文字/字体/大小/行间距等保持不变,图片也...
PDF转换工具 可转word excel PPT
pdf转换成word转换器还支持多种流行文档格式之间转换,比如pdf转成word,rtf转换成word,txt转成word,html转换成word,xls转换成word,ppt转换成word,xml转换成word,使用pdf 转 word无需安装Adobe Acrobat,...
PDF-to-Word 是一款转换 Adobe PDF 文档到 Microsoft Word 格式的程序。该转换工具具有简单易用的向导界面,即使是新手也可以轻松完成转换,并且可以最大限度的保留原有的版面布局和图像,支持转换文档中的中文等...
PDF转换成word转换器,转换出来的是图片格式的,亲测可用
PDF转换器支持:Word、Doc、RTF、TXT、Excel XLS、PowerPoint PPT以及所有可打印格式,方便将您的文档转换为电子书。 PDF转换器同时支持PDF转WORD、PDF转DOC、PDF转RTF、PDF转JPG、PDF转BMP、PDF转GIF、PDF转PNG、...
1、 Word转换为Pdf,程序很多,但转换后的Pdf,还可以复制,虽可以加密禁止复制,但市场上太多的Pdf,还可以把Pdf转换Word等其他格式,很容易被别人利用和剽窃,如何彻底的自己的Word文档,可以被人浏览,查看,而不...