
java用poi可以 *** 作word
下面是我程序里用的,不过只是解析文本,你可以参考下:
import javaioFileInputStream;
import orgapachepoihwpfextractorWordExtractor;
import orgapachepoixwpfextractorXWPFWordExtractor;
import orgapachepoixwpfusermodelXWPFDocument;
/
对MS office文档的处理
@author caoshen
/
public class OfficeUtils {
/
获得WORD文档所有的内容
@param filePath
@return
/
public static String getWordContent(String filePath){
String content = "";
FileInputStream fis;
try {
fis = new FileInputStream(filePath);
WordExtractor we = new WordExtractor(fis);
content = wegetText();
} catch (Exception e) {
try {
fis = new FileInputStream(filePath);
XWPFWordExtractor oleTextExtractor = new XWPFWordExtractor(new XWPFDocument(fis));
content = oleTextExtractorgetText();
} catch (Exception e1) {
e1printStackTrace();
}
}
return content;
}
poi读取前程无忧的简历会打不开的,至少我以前读是这样的,因为他有时候是mht文件直接另存为word文档的,所以保险起见建议用jacob来读,如果他是doc或者是docx文档可以转化为html然后用jsoup来读取,效果挺好的
下面是转化的代码:
package comjavadoc;import comjacobactiveXActiveXComponent;
import comjacobcomDispatch;
import comjacobcomVariant;
public class JacobRead {
public static void extractDoc(String inputFIle, String outputFile) {
boolean flag = false;
// 打开Word应用程序
ActiveXComponent app = new ActiveXComponent("WordApplication");
try {
// 设置word不可见
appsetProperty("Visible", new Variant(false));
// 打开word文件
Dispatch doc1 = appgetProperty("Documents")toDispatch();
Dispatch doc2 = Dispatchinvoke(
doc1,
"Open",
DispatchMethod,
new Object[] { inputFIle, new Variant(false),
new Variant(true) }, new int[1])toDispatch();
// 作为txt格式保存到临时文件
Dispatchinvoke(doc2, "SaveAs", DispatchMethod, new Object[] {
outputFile, new Variant(7) }, new int[1]);
// 关闭word
Variant f = new Variant(false);
Dispatchcall(doc2, "Close", f);
flag = true;
} catch (Exception e) {
eprintStackTrace();
} finally {
appinvoke("Quit", new Variant[] {});
}
if (flag == true) {
Systemoutprintln("Transformed Successfully");
} else {
Systemoutprintln("Transform Failed");
}
}
public static void main(String[] args) {
JacobReadextractDoc("D:/xxxx简历doc","D:/etxt");
}
}
当然,也可以转化为txt读取,这部分代码没保存,你可以到网上找找,和转化成html的方法大差不差。
然后下面是我以前写的poi读取的方式:
package TestHanLp;import javaioFileInputStream;
import javaioFileNotFoundException;
import javaioIOException;
import orgapachepoiPOIXMLDocument;
import orgapachepoiPOIXMLTextExtractor;
import orgapachepoihwpfextractorWordExtractor;
import orgapachepoiopenxml4jopcOPCPackage;
import orgapachepoixwpfextractorXWPFWordExtractor;
import orgapachepoixwpfusermodelXWPFDocument;
public class Test {
private static String text = "";
public static String Read(String path) throws Exception{
//解析docx格式的简历
if(pathtoLowerCase()endsWith("docx")){
try {
OPCPackage oPCPackage = POIXMLDocumentopenPackage(path);
XWPFDocument xwpf = new XWPFDocument(oPCPackage);
POIXMLTextExtractor ex = new XWPFWordExtractor(xwpf);
text=exgetText();
oPCPackageclose();
}
catch (FileNotFoundException e)
{
eprintStackTrace();
}
catch (IOException e)
{
eprintStackTrace();
}
}else {
//解析doc格式的简历
if(pathtoLowerCase()endsWith("doc")){
FileInputStream fis = new FileInputStream(path);// 载入文档
WordExtractor wordExtractor = new WordExtractor(fis);
String[] paragraph = wordExtractorgetParagraphText();
StringBuffer stringBuffer = new StringBuffer();
for (int i = 0; i < paragraphlength; i++) {
if (null != paragraph[i] && !""equals(paragraph[i])) {
paragraph[i] = paragraph[i]substring(0, paragraph[i]length() - 1);// 去掉末尾符号
}
stringBufferappend(paragraph[i])append("\n");//将每一小段隔开
}
text = stringBuffertoString();
}
}
return text ;
}
}
望题主采纳
对了,jacob读取word文档的效果比poi号,但运行速度不够,用的时候自己考虑考虑吧xwpfdocument有多少个xwpfparagraph btnOpenAppURLtitleLabelfont = [UIFont systemFontOfSize: 12]; 在程序里边用到UIButton,通过UIButton自身的textLabel来实现标题文字的显示,但没有成功 代码如下: btnOpenAppURLtitleLabelfont
通过jodconveter来实现转化。通过启动OpenOfficeorg的服务端口,实现程序 *** 作opeanoffice实现文件的转换。 贴上代码: mport javaioFile; import javaioFileInputStream; import javaioFileOutputStream; import javaioInputStream; imp
以上就是关于java如何解析word全部的内容,包括:java如何解析word、java:解析word文档(前程无忧简历),最好有代码案例poi或者jacob解析都可以,有jar资源,求急。感谢、xwpfdocument 在哪个jar包中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)