java方式导出word文档需要修改文字word样式导出,跪求高手解决,急,在线等。

(baby2016)
(baby2016)
(天巡写手工作室)
第三方登录:1263人阅读
java导入导出文档(2)
&&&& 使用freemarker模板导出word文档,用的比较多。这里也是采用的这种方式。
&&&&& 1& 编辑一个word文件的模板,用于在程序中需要读入填充在模板中的数据先用字母代替,注意word版本为word2003或高于这个版本;
&&&&&&&&&& 如:test.doc
&&&&&&&&&&
&&&&&2 把模板另存为xml文件;
&&&&&&&& 如:test.xml
&&&&&3 在xml中查找之前用字母代替的值 加上${} ,如${test}& ${guojia},把文件名改为test.
&&&&4 在项目的WebContent目录下新建一个文件夹,把test.xml放进去;
&&&&5 编写代码;
package com.web.
import java.io.F
import java.io.FileInputS
import java.io.FileOutputS
import java.io.InputS
import java.io.OutputS
import java.io.OutputStreamW
import java.io.W
import java.util.HashM
import java.util.M
import javax.servlet.ServletC
import javax.servlet.http.HttpServletR
import javax.servlet.http.HttpServletR
import org.apache.struts2.ServletActionC
import org.springframework.stereotype.C
import com.opensymphony.xwork2.ActionS
import freemarker.template.C
import freemarker.template.DefaultObjectW
import freemarker.template.T
@Controller
public class ExportAction extends ActionSupport{
//word模板
public static final String word_template=&/test.ftl&;
//存放模板的目录
public static final String template_path=&/template&;
//临时文件
public static final String word_temp=&/temp.doc&;
public String executeExport(){
HttpServletRequest request=ServletActionContext.getRequest();
HttpServletResponse response=ServletActionContext.getResponse();
Map dataMap=new HashMap();
if(getData(request, response, dataMap)){
File previewFile=new File(request.getSession().getServletContext().getRealPath(word_temp));
InputStream is=new FileInputStream(previewFile);
response.reset();
response.setContentType(&application/vnd.ms-charset=UTF-8&);
response.setHeader(&Content-Disposition&,& filename=export.doc&);
OutputStream os=response.getOutputStream();
byte[] b=new byte[1024];
while((len=is.read(b))!=-1){
os.write(b, 0, len);
is.close();
os.flush();
os.close();
} catch (Exception e) {
e.printStackTrace();
public static Template configTemplate(HttpServletRequest request,String temp){
Template template=
Configuration cfg=new Configuration();
ServletContext application=request.getSession().getServletContext();
System.out.println(application.getRealPath(template_path));
cfg.setDirectoryForTemplateLoading(new java.io.File(application.getRealPath(template_path)));
cfg.setObjectWrapper(new DefaultObjectWrapper());
template=cfg.getTemplate(temp,&utf-8&);
} catch (Exception e) {
e.printStackTrace();
public static void toPreview(HttpServletRequest request,String temp,Map&?, ?& root){
String previewPath=request.getSession().getServletContext().getRealPath(&&)+word_
Template tmplate=configTemplate(request, temp);
FileOutputStream fis=new FileOutputStream(previewPath);
Writer out=new OutputStreamWriter(fis,&utf-8&);
tmplate.process(root, out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
public boolean getData(HttpServletRequest request,HttpServletResponse response,Map dataMap){
dataMap.put(&test&, &测试&);
dataMap.put(&guojia&, &中国&);
dataMap.put(&shoudu&, &首都&);
toPreview(request, word_template, dataMap);
&&&&& 6 我用的struts2,executeExport为处理请求的方法,之前返回值我写的是任意字符串,不影响结果但是抛出异常 java.lang.IllegalStateException,我把返回的字符串改成null,这个异常被解决了。呵呵 当然这是和导出无关的事情,只是在这个程序里遇到了这个问题。
&&&&&&7& 导出结果:

&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:147107次
积分:3915
积分:3915
排名:第8276名
原创:253篇
转载:19篇
评论:10条
(3)(36)(5)(22)(13)(4)(21)(7)(5)(3)(22)(3)(6)(5)(6)(21)(14)(22)(32)(17)(5)藤本植物导航
&>&&>&&>&正文
项目概述 客户端使用jQuery+Ajax,服务器端:Spring(MVC,IOC,AOP),MyBat...1、定义需求(说明你这个是要做什么的,给谁用的),描述里面有的功能,比如增删改查这些具体的功能,将其功能详细需求写出来 2、给老师评审,让他们看看是否是这个步骤,这就是评审 3、然后进行开发,完全根据 1 中的需求来开发,就不需要你想...
JAVA习题,请高手帮忙解答一下,急急急
X Class1类的方法可以访问05. A0501.X 抽象类有构造方法;07,故现在大都不用了09.O 本来基本参数类型就是一个类四. D06. D03. A10. C08.O 正确的概念08. B02,因为抽象类中有非抽象方法. B07,则可以省略super()。06、01.O Exception为所有异常的父类.X 如果父类中的构造方法没有要求参数. C04.O 可以.X 不同类型的多个参数如果顺序不一样也可以实现重载10. D09,所以,可以被继承,他包含所有的异常04,不过个goto容易引起程序的不稳定性.X 父类中私有的方法和字段不会被继承02.O java类只能单继承和多实现03JAVA习题,请高手帮忙解答一下,急急急01.X 父类中私有的方法和字段不会被继承02.O java类只能单继承和多实现03.O Exception为所有异常的父类,所以,他包含所有的异常04.X Class1类的方法可以访问05.X 抽象类有构造方
项目概述 客户端使用jQuery+Ajax,服务器端:Spring(MVC,IOC,AOP),MyBat...1、定义需求(说明你这个是要做什么的,给谁用的),描述里面有的功能,比如增删改查这些具体的功能,将其功能详细需求写出来 2、给老师评审,让他们看看是否是这个步骤,这就是评审 3、然后进行开发,完全根据 1 中的需求来开发,就不需要你想...java.security.AccessControlException: access denied (java.net.Socke...获取Servlet和Struts中的值,可以把它们转换成json对象传递到jsp中,用Ajax技术 此时jsp中的代码应该是这样的: function toClick(){ //将jsp页面中的form表单中的值获取并且序列化 var _data=("#form1").serialize(); $.ajax({ type:'post', ur...1、指出下列Java程序中的错误,并修改使之能够正确运行 abstract class ...应该是没有权限的问题,如果说更改java.policy的话你可以更改如下信息 permission java.lang.RuntimePermission "accessClassInPackage.sun.jdbc.odbc"; permission java.util.PropertyPermission "file.encoding", "read"; 祝你好运!gy\这题目很难吗?在我看来如果你是程序逻辑想不通,我还可以帮帮你,但是完全想指望人家帮你做作业,希望还是能自己动手,这也是为你自己好考试过后自己要去调试一下 1.################################abstract class Student{ abstract void isPass( ) { };}class UnderGraduate extends Student { public void isPass( ) {System.out.println("Pass!");}}public class AbstarctTes...public class Test {public static void main(String[] args) {java.util.Scanner sc = new java.util.Scanner(System.in); try {System.out.println("请输入身高");double sg = sc.nextDouble();System.out.println("请输入体重");double tz = ...贴出来吧,虽然我也是新手,但觉得程序员要有共享的精神package org.deegoo.contri./** * 用户身份验证 * @author Administrator * */public abstract class UserAuth { /** * 验证方法 * @param name * @param password * @return */ abstract boolean auth(String name, String password);}pac...class Test12{ public String[] printStr(String str){ //正则表达式,按逗号,句号和空格将字符串分解成字符串数组 String[] str1=str.split("[,. ]"); //将数组按字符顺序排序 Arrays.sort(str1); //去掉字符串中的重复值 String[] str2=new S...提示你一下,这个只要求你模拟出这个场景就OK了,不是要你真正的打印出电影票
种植经验最新
种植经验推荐
& 6种植网 版权所有
渝ICP备号-23查看: 1186|回复: 2
CAD文件全部变成了HVA格式,怎么恢复呢?跪求高手指导。
如题,CAD文件变成了HVA格式,打不开了。用什么软件能够恢复一下呢???急急急!
本帖的地址:跟着教程做一遍,做完的图要到这里评论交作业,教程有看不懂的地方,可以在贴子下面评论
传个文件看看
单击文件------鼠标在该文件上右键------右键菜单中点击打开方式(有的会有下一级菜单,如有的话点默认程序)-----弹出的打开方式对话框中,找到你的CAD程序(如没找到点下面的浏览进入你在硬盘中CAD安装的位置,在安装好的CAD程序文件夹中找到CAD的启动文件)------最后点确定。。。。你再看下,是否文件图标及打开方式又恢复成CAD了。。
热门版块:
帖子推荐:
01.02.03.04.05.06.07.08.
图文热帖:
9:00-22:00
学习,从教程网开始!
部分带宽赞助
Copyright &
备案号:&&&

我要回帖

更多关于 html保存样式导出word 的文章

 

随机推荐