1.代码部分

  1. import org.junit.Test;
  2. import org.junit.runner.RunWith;
  3. import org.springframework.boot.test.context.SpringBootTest;
  4. import org.springframework.test.context.junit4.SpringRunner;
  5.  
  6. import java.io.FileInputStream;
  7. import java.io.FileOutputStream;
  8.  
  9. @RunWith(SpringRunner.class)
  10. @SpringBootTest
  11. public class PdfApplicationTests {
  12.  
  13. @Test
  14. public void contextLoads() {
  15. String filePath = "D:\\WorkSpace\\IdeaProjects\\pdf\\src\\main\\resources\\templates\\index.html";
  16. String text ="哈哈";
  17. String disrPath = "D:\\WorkSpace\\IdeaProjects\\pdf\\src\\main\\resources\\templates";
  18. String fileName = "t";
  19. MakeHtml(filePath,text,disrPath,fileName);
  20. }
  21. /**
  22. * @Title: MakeHtml
  23. * @Description: 创建html
  24. * @param filePath 设定模板文件
  25. * @param text 添加的内容
  26. * @param disrPath 生成html的存放路径
  27. * @param fileName 生成html名字
  28. * @return void 返回类型
  29. * @throws
  30. */
  31. public static void MakeHtml(String filePath,String text,String disrPath,String fileName ){
  32. try {
  33. String title = "<h2>"+text+"</h2>";
  34. System.out.print(filePath);
  35. String templateContent = "";
  36. FileInputStream fileinputstream = new FileInputStream(filePath);// 读取模板文件
  37. int lenght = fileinputstream.available();
  38. byte bytes[] = new byte[lenght];
  39. fileinputstream.read(bytes);
  40. fileinputstream.close();
  41. templateContent = new String(bytes);
  42. System.out.print(templateContent);
  43. //把模板页面上的 ###text### 替换成 title 里的内容
  44. templateContent = templateContent.replaceAll("###text###", title);
  45. System.out.print(templateContent);
  46.  
  47. String fileame = fileName + ".html";
  48. fileame = disrPath+"/" + fileame;// 生成的html文件保存路径。
  49. FileOutputStream fileoutputstream = new FileOutputStream(fileame);// 建立文件输出流
  50. System.out.print("文件输出路径:");
  51. System.out.print(fileame);
  52. byte tag_bytes[] = templateContent.getBytes();
  53. fileoutputstream.write(tag_bytes);
  54. fileoutputstream.close();
  55. } catch (Exception e) {
  56. System.out.print(e.toString());
  57. }
  58. }
  59. }
  60.  

2.模板页

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8"/>
  5. <title>Title</title>
  6. </head>
  7. </head>
  8. <body>
  9. ###text###
  10. </body>
  11. </html>

3.生成的html

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8"/>
  5. <title>Title</title>
  6. </head>
  7. </head>
  8. <body>
  9. <h2>哈哈</h2>
  10. </body>
  11. </html>

java 根据html模板生成html文件的更多相关文章

  1. Java根据Freemarker模板生成Word文件

    1.  准备模板 模板 + 数据 = 模型 1.将准备好的Word模板文件另存为.xml文件(PS:建议使用WPS来创建Word文件,不建议用Office) 2.将.xml文件重命名为.ftl文件 3 ...

  2. java通过FreeMarker模板生成Excel文件之.ftl模板制作

    关于怎么通过freemarker模板生成excel的文章很多,关键点在于怎么制作模板文件.ftl 网上的办法是: (1)把Excel模板的格式调好,另存为xml文件 (2)新建一个.ftl文件,把xm ...

  3. 利用html模板生成Word文件(服务器端不需要安装Word)

    利用html模板生成Word文件(服务器端不需要安装Word) 由于管理的原因,不能在服务器上安装Office相关组件,所以只能采用客户端读取Html模板,后台对模板中标记的字段数据替换并返回给客户端 ...

  4. 根据PDF模板生成PDF文件(基于iTextSharp)

    根据PDF模板生成PDF文件,这里主要借助iTextSharp工具来完成.场景是这样的,假如要做一个电子协议,用过通过在线填写表单数据,然后系统根据用户填写的数据,生成电子档的协议.原理很简单,但是每 ...

  5. 使用word模板生成pdf文件

    使用word模板生成pdf文件 源码:UserWord

  6. Java根据html模板创建 html文件

    1.创建html的java代码 package com.tydic.eshop.util; import java.io.FileInputStream; import java.io.FileOut ...

  7. JAVA Freemarker + Word 模板 生成 Word 文档 (普通的变量替换,数据的循环,表格数据的循环,以及图片的东替换)

    1,最近有个需求,动态生成 Word 文当并供前端下载,网上找了一下,发现基本都是用 word 生成 xml 然后用模板替换变量的方式 1.1,这种方式虽然可行,但是生成的 xml 是在是太乱了,整理 ...

  8. JAVA中使用freemark生成自定义文件(json、excel、yaml、txt)

    原文:http://blog.csdn.net/jinzhencs/article/details/51461776 场景:在我们工作中,有时需要生成一些文件,可能它不是一种标准的格式,比如JSON. ...

  9. java根据freeMark模板生成内容

    根据ftl模板生成文件内容可以用来生成代码模板,如下所示: aa.ftl name : ${name} age : ${age} aa.java package mall_tools; import ...

随机推荐

  1. 在Win10上运行ESXI-Comstomer

    在Win10上运行ESXI-Comstomer 来源 https://www.v-front.de/p/esxi-community-packaging-tools.html ESXi-Customi ...

  2. MVC4学习要点记二

    一.分页(PagedList.MVC)1.安装PagedList.MVCPM>install-package PagedList.mvc   2.控制器中使用PagedList   3.csht ...

  3. 简单了解soap协议

    SOAP的是什么的简写 soap是(Simple Object Access Protocal)的简写,即简单对象访问协议,它描述了一种在分散或分布式的环境中如何交换信息的轻量级协议. soap用来干 ...

  4. WebStrom 中文显示异常中文变样乱码

    问题描述 WebStorm 编辑文件时中文显示异常,大小不一 菜单栏字体需要更换 解决方法 修改编辑器字体 菜单栏默认字体取消 设置效果 编辑文件时中英文显示 菜单栏 其他相关 关于编码格式,这里未做 ...

  5. vue-cli实现原理

    分析:https://kuangpf.com/vue-cli-analysis/create/basic-verification.html vue-cli-service :https://blog ...

  6. nps内网渗透利用

    0x00 前言 对比了比较多的代理工具,如ew流量不稳定,容易断:frsocks目前免杀,也是容易断.frp需要落地配置文件,不符合渗透的规则.reg正向的socks,速度比较慢,扫描是个问题.其实我 ...

  7. ChinaCock扫描控件介绍-使用TCCBarcodeScanner引起app闪退

    好几个ChinaCock的朋友说遇到扫码时闪退,进一步总结,都是Android 8的机器上才会出现,今天我也遇到.正好有朋友说,按下面这个改配置文件就可以解决: <!-- 扫描的activity ...

  8. JavaMaven【六、生命周期】

    Maven有三个独立的生命周期,每个生命周期都不会出发别的生命周期的操作 若直接执行生命周期后面的操作,maven会默认执行前面的操作 如项目创建好后,直接执行mvn install,会默认依次执行c ...

  9. [转] TextCNN调参技巧

    原文地址: https://plushunter.github.io/2018/02/26/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E5%A4%84%E7%90%86 ...

  10. gyp ERR! stack Error: EACCES: permission denied, mkdir问题解决方案

    sudo npm i --unsafe-perm 原因还是权限问题 就是说 npm 出于安全考虑不支持以 root 用户运行,即使你用 root 用户身份运行了,npm 会自动转成一个叫 nobody ...