java如何实现读取word文件并按指定word样式格式输出
使用java中的io进行读取BufferedReader bufferedReader = null;File file = new File("文档地址+文档名.docx");if(!file.exists()){System.out.println("文件不存在");} else {bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "读取的字符格式(UTF-8或GBK)"));String lineText = null;while((lineText = bufferedReader.readLine()) != null){if (linText != null && !lineText.eq("")){System.out.println("一次读取一行,一行内容为:" + lineText);
java如何实现读取word文件并按指定word样式格式输出
创建Openoffice连接OpenOfficeConnection con = new SocketOpenOfficeConnection(8100);try {//:\Program Files (x86)\OpenOffice,其实也可以是MS Office.out,等待eclipse打开;program>soffice -headless -accept="socket;);*** 将Word文档转换成html字符串的工具类** @author MZULE**/,等待下载。
4、安装OpenOffice..");e.printStackTrace();}//public class Doc2Html {public static void main(String[] args) {System,安装结束后;"//,说明一下,本文的测试基于 MS Win7 Ultimate X64 系统。
下面就是规规矩矩的实现。
1、下载OpenOffice,启动OpenOffice的一项服务。
* commons-io* jodconverter* juh* jurt* ridl* slf4j-api* slf4j-jdk14* unoil* xstream 8;获取OpenOffice连接失败..artofsolving.jodconverter将Word转Html的原理是这样的:1、客户上传Word文档到服务器2、服务器调用OpenOffice程序打开上传的Word文档3、OpenOffice将Word文档另存为Html格式4、Over至此可见.Pattern.getTime()+ ".util;import java.io.FileInputStream.artofsolving.jodconverter,调用cmd.io.InputStreamReader;import java.net.ConnectException;import com.artofsolving,port=8100,你懂的; 连接con.connect();} catch (ConnectException e) {System..查看代码package com.mzule.doc2html.println(toHtmlString(new File(".SocketOpenOfficeConnection;import com; + new Date();}/、下载Jodconverter 这是一个开启OpenOffice进行格式转化的第三方jar包。
3、泡杯热茶。
** @param docFile* 需要转换的文档* @param filepath* 文档中图片的保存位置* @return 转换成功的html代码*/.util.Date;);//"*** 将word转换成html文件,并且获取html文件代码, "C:/test"return htmlFile.openoffice.connection。
恩.io.FileNotFoundException;import java.io.artofsolving.jodconverter、Coding..out;import java;import java,2.openoffice.converter.OpenOfficeDocumentConverter;/C、打开eclipse6、喝杯热茶;/ 转换文档问htmlconverter.convert(docFile, htmlFile):C.regex.org 3\.println(" 关闭openoffice连接con.disconnect().BufferedReader;import java.io.openoffice.connection;import java; 创建转换器DocumentConverter converter = new OpenOfficeDocumentConverter(con);/urp;5;));}/*** 将word文档转换成html文档** @param docFile* 需要转换的word文档* @param filepath* 转换之后html的存放路径* @return 转换之后的html文件*/, String filepath) {/、新建eclipse项目;import java。
7,导入Jodconverter/lib 下得jar包.html".File;import java.io;/ 创建保存html的文件File htmlFile = new File(filepath + "/.IOException:/test/public static File convert(File docFile.util.regex.Matcher;import java.util.jodconverter.DocumentConverter;import com.OpenOfficeConnection;import com;test.doc"public static String toHtmlString(File docFile, String filepath) {// 转换word文档File htmlFile = convert(docFile, filepath);// 获取html文件流StringBuffer htmlSb = new StringBuffer();try {BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(htmlFile)));while (br.ready()) {htmlSb.append(br.readLine());}br.close();// 删除临时文件htmlFile.delete();} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}// HTML文件字符串String htmlStr = htmlSb.toString();// 返回经过清洁的html文本return clearFormat(htmlStr, filepath);}/*** 清除一些不需要的html标记** @param htmlStr* 带有复杂html标记的html语句* @return 去除了不需要html标记的语句*/protected static String clearFormat(String htmlStr, String docImgPath) {// 获取body内容的正则String bodyReg = "";Pattern bodyPattern = Pattern.compile(bodyReg);Matcher bodyMatcher = bodyPattern.matcher(htmlStr);if (bodyMatcher.find()) {// 获取BODY内容,并转化BODY标签为DIVhtmlStr = bodyMatcher.group().replaceFirst("", "");}// 调整图片地址htmlStr = htmlStr.replaceAll("转换成保留样式// content = content.replaceAll("(]*>.*?)()",// "");// 把转换成并删除样式htmlStr = htmlStr.replaceAll("(]*)(>.*?)()", "");// 删除不需要的标签htmlStr = htmlStr.replaceAll("]*?>","");// 删除不需要的属性htmlStr = htmlStr.replaceAll("]*)(?:lang|LANG|class|CLASS|style|STYLE|size|SIZE|face|FACE|[ovwxpOVWXP]:\\w+)=(?:'[^']*'|\"\"[^\"\"]*\"\"|[^>]+)([^>]*)>","");return htmlStr;}},这要求服务器端安装OpenOffice软件,不过OpenOffice的优势是跨平台 展开
java poi导出word 可以设置格式吗
1. 读取word 2003及word 2007需要的jar包2. 读取 2003 版本(.doc)的word文件相对来说比较简单,只需要 poi-3.5-beta6-.jar 和 poi-scratchpad-3.5-beta6-.jar 两个 jar 包即可, 而 2007 版本(.docx)就麻烦多,我说的这个麻烦不是我们写代码的时候麻烦,是要导入的 jar 包比较的多,有如下 7 个之多:3. 1. openxml4j-bin-beta.jar4. 2. poi-3.5-beta6-.jar5. 3. poi-ooxml-3.5-beta6-.jar6. 4 .dom4j-1.6.1.jar7. 5. geronimo-stax-api_1.0_spec-1.0.jar8. 6. ooxml-schemas-1.0.jar9. 7. xmlbeans-2.3.0.jar10. 其中 4-7 是 poi-ooxml-3.5-beta6-.jar 所依赖的 jar 包(在 poi-bin-3.5-beta6-.tar.gz 中的 ooxml-lib 目录下可以找到)。
11. 2.换行符号12. 硬换行:文件中换行,如果是键盘中使用了"enter"的换行。
13. 软换行:文件中一行的字符数容量有限,当字符数量超过一定值时,会自动切到下行显示。
14. 对程序来说,硬换行才是可以识别的、确定的换行,软换行与字体大小、缩进有关。
15. 3.读取的注意事项16. 值得注意的是: POI 在读取不会读取 word 文件中的图片信息; 还有就是对于 2007 版的 word(.docx), 如果 word 文件中有表格,所有表格中的数据都会在读取出来的字符串的最后。
17. 4.读取word文本内容代码1 import java.io.File;2 import java.io.FileInputStream;3 import java.io.InputStream;4 5 import org.apache.poi.POIXMLDocument;6 import org.apache.poi.POIXMLTextExtractor;7 import org.apache.poi.hwpf.extractor.WordExtractor;8 import org.apache.poi.openxml4j.opc.OPCPackage;9 import org.apache.poi.xwpf.extractor.XWPFWordExtractor;10 11 public class Test {12 public static void main(String[] args) {13 try {14 InputStream is = new FileInputStream(new File("2003.doc"));15 WordExtractor ex = new WordExtractor(is);16 String text2003 = ex.getText();17 System.out.println(text2003);18 19 OPCPackage opcPackage = POIXMLDocument.openPackage("2007.docx");20 POIXMLTextExtractor extractor = new XWPFWordExtractor(opcPackage);21 String text2007 = extractor.getText();22 System.out.println(text2007);23 24 } catch (Exception e) {25 e.printStackTrace();26 }27 }28 }
在CORELDRAW中如何编辑导入文件,如WORD文档格式,文字等。
直接导入就可以。
选择文件菜单:导入:选择word文档,确定(默认的值不用改,一直确定)等到没有对话框了,鼠标变成尺子一样的图标,这个时候你单击拖出一个矩形框(word的文档放置范围)。
框的四周都是虚线,可能拖出框以后里面的文本还看不见,你双击框内,会自动切换到文本工具,这个时候文字就出现了。
(还没出现就用文本工具在矩形内框选文本内容)但是图片貌似没法显示,导不进来吧
用java打开一个word文档(a.docx) 怎么搞
\Microsoft Office\).File; import java:\\.getRuntime().exec(""C;\temp\\WINWORD.EXE aa;\the list;"package cn;Program Files\.doc\ public static void main(String[] args) { try { Runtime:\\.doc"); } catch (IOException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } } } 你的WORD安装路径C;c \"C:\.exec("cmd /Program Files\\Microsoft Office\\WINWORD.EXE空格后所加的aa.doc为你的文档文件名(有文件名重复的,可以加路径,写法和安装路径的写法一样)或者用Runtime.getRuntime();\OFFICE11\ import java.io;\OFFICE11\.io.IOException; public class TT { /** * @param args */.rain.main...
转载请注明出处51数据库 » java中导入word文档格式
亖呉?盀