import org.apache.poi.hwpf.extractor.WordExtractor
//得到.doc文件提取器
org.apache.poi.hwpf.extractor.WordExtractor doc = new WordExtractor(new FileInputStream(filePath))
//提取.doc正文文本
String text = doc.getText()
//提取.doc批注
String[] comments = doc. getCommentsText()
2007
import org.apache.poi.POITextExtractor
import org.apache.poi.xwpf.extractor.XWPFWordExtractor
import org.apache.poi.xwpf.usermodel.XWPFComment
import org.apache.poi.xwpf.usermodel.XWPFDocument
//得到.docx文件提取器
org.apache.poi.xwpf.extractor.XWPFWordExtractor docx = new XWPFWordExtractor(POIXMLDocument.openPackage(filePath))
//提取.docx正文文本
String text = docx.getText()
//提取.docx批注
org.apache.poi.xwpf.usermodel.XWPFComment[] comments = docx.getDocument()).getComments()
for(XWPFComment comment:comments){
comment.getId()//提取批注Id
comment.getAuthor()//提取批注修改人
comment.getText()//提取批注内容
}
1、实现富文本中样式代码的分离;
2、保留CSS样式;
其实以上两个步骤是相互矛盾的处理过程,无法通过Jacob或POI组件加正则表达式过滤解决,于是进行了以下步骤的实验:
1、首先创建了一个空白word文档,格式(office 2003格式或office 2007格式)不限;
2、将word格式保存为html格式,通过Edit Plus打开,发现代码中使用了office的命名空间,同时使用了office命名空间的标签定义了CSS样式,自己测试了一下,将生成的html文件头和尾拷贝出来:代码如下:
以上HTML头是office的命名空间定义。
3、将使用富文本代码粘贴到红色标识的<!-- 富文本代码区 -->中,并以doc或docx格式保存文件;
4、大功告成,打开文件时,Word将会以“Web版视图”完美显示了富文本样式,成功解决了富文本代码中样式代码,并同时保留了格式;
目前研究的仅能保存文字,未处理有图片的代码,朋友们可以再研究一下带图片的富文本代码的转换;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)