请教java html导出word如何实现

请教java html导出word如何实现,第1张

java将html导出word不用忘记<html></html>这对标签

//换页

<span style='font-size:16pxline-height:150%font-family:"Times New Roman"

mso-fareast-font-family:宋体mso-font-kerning:1pxmso-ansi-language:EN-US

mso-fareast-language:ZH-CNmso-bidi-language:AR-SA'><br clear=all style='mso-special-character:page-breakpage-break-before:always'>

</span>

//换行

<p style='line-height:150%'><span style='font-size:16pxline-height:150%'><o:p></o:p></span></p>

查看的话 打开word 视图——页面 就能看出看出效果

[java] view plain copy print?

ArrayList records = form.getRecords()//获取数据库数据

if(null!=records&&0!=records.size()){

//html拼接出word内容

String content="<html>"

for (int i = 0i <records.size()i++) {

Record record =(Record) records.get(i)

//从数据库中获得数据,将oracle中的clob数据类型转换成string类型

Method method = record.get("CONTENT").getClass().getMethod("getVendorObj",new Class[]{})

CLOB clob = (CLOB)method.invoke(record.get("CONTENT"))

String cx = clob.getSubString((long) 1, (int) clob.length())

String title= (String) record.get("TITLE")

//html拼接出word内容

content+="<div style=\"text-align: center\"><span style=\"font-size: 24px\"><span style=\"font-family: 黑体\">"+title+"<br /><br /></span></span></div>"

content+="<div style=\"text-align: left\"><span >"+cx+"<br /><br /></span></span></div>"

//插入分页符

content+="<span lang=EN-US style='font-size:16pxline-height:150%mso-fareast-font-family:宋体mso-font-kerning:1pxmso-ansi-language:EN-USmso-fareast-language:ZH-CNmso-bidi-language:AR-SA'><br clear=all style='page-break-before:always'></span>"

content+="<p class=MsoNormal style='line-height:150%'><span lang=EN-US style='font-size:16pxline-height:150%'><o:p></o:p></span></p>"

}

content += "</html>"

byte b[] = content.getBytes()

ByteArrayInputStream bais = new ByteArrayInputStream(b)

POIFSFileSystem poifs = new POIFSFileSystem()

DirectoryEntry directory = poifs.getRoot()

DocumentEntry documentEntry = directory.createDocument("WordDocument", bais)

//输出文件

String name="导出知识"

response.reset()

response.setHeader("Content-Disposition",

"attachmentfilename=" +

new String( (name + ".doc").getBytes(),

"iso-8859-1"))

response.setContentType("application/msword")

OutputStream ostream = response.getOutputStream()

//输出文件的话,new一个文件流

//FileOutputStream ostream = new FileOutputStream(path+ fileName)

poifs.writeFilesystem(ostream)

ostream.flush()

ostream.close()

bais.close()

你用IE浏览器打开你的HTML文件,然后点击菜单栏 文件→使用 Microsoft Office Word 编辑,之后系统会自动打开 Word 并显示HTML文件的内容,这是保存即可。

如果找不到“使用 Microsoft Office Word 编辑”的话,点击菜单栏 工具→Internet 选项→程序→ HTML 编辑器 → Microsoft Office Word → 确定。

可以通过Spire.Doc for Java进行转换。

首先需要安装Spire.Doc for Java。可在 Java 程序中添加 Spire.Doc for Java 文件作为依赖项。JAR 文件可以从此链接下载。 如果您使用 Maven,则可以将以下代码添加到项目的 pom.xml 文件中,从而轻松地在应用程序中导入 JAR 文件。

<repositories>

<repository>

<id>com.e-iceblue</id>

<name>e-iceblue</name>

<url>https://repo.e-iceblue.cn/repository/maven-public/</url>

</repository></repositories><dependencies>

<dependency>

<groupId>e-iceblue</groupId>

<artifactId>spire.doc</artifactId>

<version>5.2.3</version>

</dependency></dependencies>

Java代码如下:

mport com.spire.doc.*public class WordtoHtml {

public static void main(String[] args) {

//实例化Document类的对象

Document  doc = new Document()

//加载Word文档

doc.loadFromFile("inputfile.docx")

//保存为HTML格式

doc.saveToFile("ToHtml.html",FileFormat.Html)

doc.dispose()

}

}

希望对您有帮助。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6214467.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-18
下一篇 2023-03-18

发表评论

登录后才能评论

评论列表(0条)

保存