`

html转换到word

 
阅读更多

最近在项目中需要将通过富文本编辑器处理过的文字转换为Word,查了很久,大家通常的解决办法是使用Jacob或POI等组件直接生成Word,但是都无法将富文本编辑器处理过的文字保留样式并保存为Word,最终以失败而告终,无奈只有自己研究Word的格式转换;

分析了转换过程,总体分两个步骤:

1、实现富文本中样式代码的分离;

2、保留CSS样式;

其实以上两个步骤是相互矛盾的处理过程,无法通过Jacob或POI组件加正则表达式过滤解决,于是进行了以下步骤的实验:

1、首先创建了一个空白word文档,格式(office 2003格式或office 2007格式)不限;

2、将word格式保存为html格式,通过Edit Plus打开,发现代码中使用了office的命名空间,同时使用了office命名空间的标签定义了CSS样式,自己测试了一下,将生成的html文件头和尾拷贝出来:代码如下:

[html] view plaincopy

    <html xmlns:v="urn:schemas-microsoft-com:vml"  
    xmlns:o="urn:schemas-microsoft-com:office:office"  
    xmlns:w="urn:schemas-microsoft-com:office:word"  
    xmlns:m="http://schemas.microsoft.com/office/2004/12/omml"  
    xmlns="http://www.w3.org/TR/REC-html40">  
      
    <!-- 富文本代码区 -->  
      
    </html>  


以上HTML头是office的命名空间定义。

3、将使用富文本代码粘贴到红色标识的<!-- 富文本代码区 -->中,并以doc或docx格式保存文件;

4、大功告成,打开文件时,Word将会以“Web版视图”完美显示了富文本样式,成功解决了富文本代码中样式代码,并同时保留了格式;

java代码
public class HtmlToWord {
	@Test
	public void htmlToWord() throws IOException{
		File file = new File("D:\\77.doc");
		if(!file.exists()){
			file.createNewFile();
		}
		FileOutputStream fos = new FileOutputStream(file);
		StringBuffer sb = new StringBuffer("");
		fos.write("<html xmlns:v=\"urn:schemas-microsoft-com:vml\"".getBytes());
		fos.write("xmlns:o=\"urn:schemas-microsoft-com:office:office\"".getBytes());
		fos.write("xmlns:w=\"urn:schemas-microsoft-com:office:word\"".getBytes());
		fos.write("xmlns:m=\"http://schemas.microsoft.com/office/2004/12/omml\"".getBytes());
		fos.write("xmlns=\"http://www.w3.org/TR/REC-html40\">".getBytes());
		fos.write("<body>".getBytes());
		fos.write("<img width=554 height=577 src=\"1212.jpg\">".getBytes());
		fos.write("</body>".getBytes());
		fos.write("</html>".getBytes());
	}
}
分享到:
评论

相关推荐

    java html转换word

    java利用poi把html网友转换成word文档的小例子,包含程序代码和jar包。

    C# HtmlToWord 将HTML文件转换成word文档

    批量的把html 文件转换成word,不需要电脑上有word软件!并且支持本地图片,html链接的图片必须在本地,可以把图片转换到word里!

    word转换成html工具

    Word 转换成 Html Word 转换成 Html Word 转换成 Html 注意:转换时会删除原文件,一定要备份原文件 注意:转换时会删除原文件,一定要备份原文件 注意:转换时会删除原文件,一定要备份原文件 注意:转换...

    txt,word,wps到html格式转换的写法

    txt,word,wps到html格式转换的写法

    word转换成HTML(C#)

    word转换成HTML(C#) word转换成HTML(C#) word转换成HTML(C#)

    PDF快速转换成HTML,WORD,EXCEL,PPT软件

    PDF快速转换成HTML,WORD,EXCEL,PPT软件

    PDF转word转换器(pdf转换成word) v12.0 官方正式版.zip

    pdf转换成word转换器还支持多种流行文档格式之间转换,比如pdf转成word,rtf转换成word,txt转成word,html转换成word,xls转换成word,ppt转换成word,xml转换成word,使用pdf 转 word无需安装Adobe Acrobat,...

    Word2Htm Word转换Htm/Html工具

    Word2Htm是一款先进的Word转换Htm/Html的工具,该工具不像别的软件直接Word另存为Htm/Html,那样会产生很多垃圾代码,本软件可以智能分析Word中的代码,将Word文档转换为有条理、结构清晰、内容简洁的Htm/Html文档,...

    java中html转word方法以及用到的jar包

    java中html转word方法以及用到的jar包,此方法是将html源码以字符串的形式进行转换,转换到word文件中,支持图片以及文字等信息。但是不支持视频等信息

    通过Js实现Html转换成Word下载

    比如文件下载,可以使用这个Js来实现,不用单独再去传word版本,还有就是有些文件还找不到word版,就可以用这个来实现

    PDF文档转换成word,html,swf格式软件

    很易用的PDF格式转换器,支持PDF转换Word/DOC、PDF转换图片格式( JPG/BMP/GIF/PNG/TIF)、PDF转换TXT、PDF转换HTML、PDF转换Flash/SWf

    poi创建word、生成html、itext将html转换成pdf。pd4ml将jsp转成pdf

    1.用户导入word生成pdf -首先导入word的时候读取word里面的全部内容。调用(ReadAndWriteDoc)然后将内容 传送到createPdf里面生成pdf。导入的时候读取采用poi /生成的时候采用的是...4.将html转换成pdf(itext)

    word转换成HTML

    利用appache poi将word文档转换成HTML便于前台预览,如果预览仅限于文字的话,这个完全能够满足,对于文档中包含表格,图片就不太适合了。jar包都有可以直接导入项目运行

    C# CHtmlToWord 将HTML文件转换成word文档!

    批量的把html 文件转换成word,不需要电脑上有word软件!并且支持本地图片,html链接的图片必须在本地,可以把图片转换到word里! 代码简单,没有注释! 不喜勿喷!

    C# html转换成word

    html解析为word,并保存为word文档

    word批量转换html

    word批量转换html 自动添加自动转换

    C# 将Word,Excel转换成Html

    C# 将Word,Excel转换成Html. 看看就能明白。C#直接将Word,Excel转换成Html。

    python语言写的将html格式文件转换为word文件

    html文件转为word文件 若有需要html页面的文章需要转为word格式的文件,可以通过此程序进行转换。 将html内容转为word格式的文件。

    PDF转换成Word工具

    拥有这款PDF转换器,您相当于有了WORD转PDF转换器,PDF转WORD转换器,PDF转DOC转换器,PDF转TXT转换器,PDF转HTML转换器,PDF转JPG转换器,PDF转HTML转换器,PDF转FLASH转换器,DOC转PDF转换器,TXT转PDF转换器,...

    word转换成html

    Word2HTML是一款可以把Word文档转换为HTML格式网页文件,生成类似微软MSDN在线帮助文档的软件。支持多个文档一次性合并转换,完美效果及个性设置,一分钟即可完成几百页文档的转换。Word2HTML!是您建立在线文档中心...

Global site tag (gtag.js) - Google Analytics