Java html转word_html文件转换成excel

Java html转word_html文件转换成excel使用aspose的原因:1.使用简单,功能强大2.可以自动将html中可以访问的img标签存入word文档中3.可以轻松实现HTML中的样式转换到word文档中首先使用的jar包是:aspose-words-14.9.0-jdk16.jar这个可以在网上找到激活成功教程版以下是代码:1:读取asposelicensepublicstaticbooleangetAsposeWordLice


Jetbrains全系列IDE稳定放心使用

使用aspose的原因:

1.使用简单,功能强大
2.可以自动将html中可以访问的img标签存入word文档中
3.可以轻松实现HTML中的样式转换到word文档中

首先使用的jar包是:aspose-words-14.9.0-jdk16.jar
这个可以在网上找到激活成功教程版

以下是代码:
(注:本代码使用的groovy语言,和java差不多,格式有所差距,比如结尾没有java必须用到的”;”分号)

1:读取aspose license

public static boolean getAsposeWordLicense(){
    boolean result = false;
    try {
        InputStream is =Thread.currentThread().getContextClassLoader().getResourceAsStream("aspose/aspose-license.xml") // Context.getResourceAsStream("aspose-license.xml");
        License aposeLic = new License();
        aposeLic.setLicense(is);
        result = true;
    } catch (Exception e) {
        e.printStackTrace();
    }
    return result;
}
2:制作生成.doc格式word文档

/**
 * html to word
 * @param body 要转换成word的 源html文档
 * @param outputStream 输出流,可传入responseOutputStream
 * @return 输出流
 */
def FileOutputStream HtmlToWord(String body,OutputStream out){
    if(!com.common.utils.aspose.AsposeUtil.getAsposeWordLicense()){
        return null
    }
   // OutputStream out = null;
    try {
        //out = new FileOutputStream()
        //将HTML中的img标签的src全部转换为可访问到的地址(个人业务逻辑)
        //body = parseImgUrlFromBody(body)
        //这里是加入css样式,以引入的方式
        String css = "<link rel='stylesheet' href='"+grailsApplication.config.staticFileBaseUrl+"/css/simditor.css' type='text/css' />"
        String cssFont = "<link rel='stylesheet' href='"+grailsApplication.config.staticFileBaseUrl+"/css/font-awesome.css' type='text/css' />"
        //拼接完整的HTML文档
        String html = "<!DOCTYPE html> <html> <head> "+css+cssFont+" </head> <body><div class='editor-style'>" + body + "</div></body> </html>"
        Document doc = new Document();
        DocumentBuilder builder = new DocumentBuilder(doc);
        builder.insertHtml(html);
        doc.save(out, SaveOptions.createSaveOptions(SaveFormat.DOC));//生成doc文件
        return out
    }catch (Exception e){
        log.debug("------HtmlToWord convert error because"+e.message)
        return null
    }
}
以上完成,简单且完整的word文档生成了,图片和CSS会自动写入word文档中.
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183465.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • intellij idea 2021激活码_在线激活

    (intellij idea 2021激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月28日
  • 宝塔服务器搭建网站教程_宝塔linux面板漏洞

    宝塔服务器搭建网站教程_宝塔linux面板漏洞腾讯云免费SSL证书是腾讯云为用户提供的一款免费一年使用的SSL证书,用起来方便、快捷。同时搭配现在很热门的建站神器:宝塔面板,即使小白也能在很短时间内搞定网站域名“小绿锁”。今天老魏详细讲解如何申请腾讯云免费SSL证书,并部署到宝塔面板中。一、注册帐号在腾讯云申请证书首先需要注册腾讯云账号并且完成实名认证。新用户请点我直达腾讯云官网,从右上角的【免费注册】,进入注册页面。注册后要先完成实名认证,…

    2022年9月9日
  • 多层感知机详解(如果增加多层感知机的隐藏层层数)

    Principlesoftrainingmulti-layerneuralnetworkusingbackpropagation  Theprojectdescribesteachingprocessofmulti-layerneuralnetworkemploying backpropagation algorithm.Toillustrateth…

    2022年4月11日
  • JavaScript清空数组的三种方法

    JavaScript清空数组的三种方法1、length用length方法可以很轻松地清空数组,代码示例:vararr=[1,2,3];console.log(arr);arr.length=0;console.log(arr);结果如下:2、splisesplice()方法向/从数组中添加/删除项目,然后返回被删除的项目vararr=[1,2,3]…

    2022年6月9日
  • IDEA三种注释快捷键

    IDEA三种注释快捷键三种注释方式  行注释、块注释、方法或类说明注释。一、快捷键:Ctrl+/  使用Ctrl+/,添加行注释,再次使用,去掉行注释二、演示代码if(hallSites!=null&&hallSites.size()>0){//行注释//最大行号intmaxRow=0;//最大列数intmaxCol=0;}块注释一、快捷键:Ctrl+Shift+/  使用Ctr..

    2022年4月30日
  • 在纯Windows环境下部署DzzOffice+OnlyOffice协同办公系统

    在纯Windows环境下部署DzzOffice+OnlyOffice协同办公系统老大有个需求,嗯,老大只管提需求,不会IT的业务不算好会计,而且预算为0。WTF…需求:私有云或者简单的OA系统硬件条件:有什么算什么预算:0WTFDouble初步方案:找到一台半闲置

    2022年8月1日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号