//导出excel模板
public void exportExcelTemplate(ActionMapping mapping,
ActionForm form, HttpServletRequest req, HttpServletResponse res,
RequestHashNew reh)throws Exception {
req.setCharacterEncoding("utf-8");
res.setContentType("application/x-download");//设置为下载application/x-download
//PrintWriter out = reh.getRes().getWriter();
String fileName = "";
//设置输出文件
String prefix=req.getSession().getServletContext().getRealPath("/");
fileName = "电费电量单";
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmssSSS");
String fileSrc=prefix +"temp/"+fileName+formatter.format(new java.util.Date())+".xls";
File file = new File(fileSrc);
String filenamedisplay = "电费电量单.xls";//系统解决方案.txt
// filenamedisplay = URLEncoder.encode(filenamedisplay,"UTF-8");
res.addHeader("Content-Disposition","attachment;filename=" + EncodeUitl.encodeFileName(req, filenamedisplay));
//PrintWriter out = response.getWriter();
ServletOutputStream output = null;
try {
output = res.getOutputStream();
excelExportMgr.CreateExcel(req, prefix, file);
} catch (ParseException e) {
e.printStackTrace();
}
FileInputStream filein = new FileInputStream(fileSrc);
int i;
while ((i = filein.read())!=-1) {
output.write(i);
}
filein.close();
output.close();
file.delete();
}
public void CreateExcel(HttpServletRequest request, String prefix, File file)
throws Exception {
FileOutputStream fos=null;
String fileName = "";
fileName = "电费电量单";
//File file1 = new File(targetDirectory +"SYSTEM"+"MODEL"+"电工考试申请表.doc");
FileInputStream fis=null;
fos = new FileOutputStream(file,true);
//FileWriter fw=new FileWriter(file,true);
byte[] buff = new byte[4096];
int readed = -1;
fis = new FileInputStream(prefix+"SYSTEM"+"/"+"MODEL"+"/"+fileName+".xls");
while((readed = fis.read(buff))>0)
fos.write(buff,0,readed);
fis.close();
fos.close();
}
分享到:
相关推荐
在Struts中实现文件下载是一项常见的功能,尤其在处理用户请求获取服务器上的静态或动态资源时。这篇博文将深入探讨如何在Struts框架下实现文件下载的功能。 首先,我们需要了解文件下载的基本原理。当用户点击下载...
在处理用户交互,特别是涉及文件上传和下载功能时,Struts1.x提供了强大的支持。以下是对"struts1.x 上传下载"这个主题的详细解释。 **一、Struts1.x文件上传** 在Struts1.x中,文件上传主要依赖于`org.apache....
在这个“Struts2实现文件下载功能”的示例中,我们将深入探讨如何利用Struts2框架来实现在web应用中让用户下载文件的功能。 首先,我们需要理解文件下载的基本原理。在Web应用中,当用户点击一个链接或提交一个表单...
1. **配置Struts2 Action**:在`struts.xml`配置文件中,你需要定义一个Action,该Action负责处理文件上传请求。Action的类需要继承自`ActionSupport`,并覆盖`execute()`方法,以便处理上传的文件。 2. **设置...
Struts1的fileupload的文件上传
Struts1和Struts2是两个非常著名的Java Web框架,它们都提供了处理文件上传和下载的功能,但实现方式有所不同。本文将深入探讨这两个框架在文件操作方面的具体实现。 首先,让我们了解一下Struts1中的文件上传功能...
在这个项目中,我们将探讨如何利用Struts1来实现文件的上传和下载功能。 首先,我们需要理解文件上传的基本流程。在Web应用中,用户通过表单提交包含文件的POST请求到服务器。Struts1框架接收到这个请求后,会使用`...
1. 创建下载服务:在Struts框架中,通常通过一个Action来提供文件下载服务。Action需要根据请求参数找到待下载文件的路径,然后设置响应头,包括Content-Type(表示文件类型)和Content-Disposition(告诉浏览器以...
在Struts2中处理文件下载是常见的需求,比如用户请求下载服务器上的文件,如PDF、图片或其他类型的文档。本案例"Struts2之struts012"将深入探讨如何在Struts2中实现文件下载的功能。 首先,我们需要创建一个Action...
从给定的文件信息来看,标题“struts2中文学习文档”和描述“struts2的根本webwork2”表明这是一份关于Struts2框架的学习资料,特别强调了Struts2与WebWork2的关系。Struts2是Apache Struts的一个版本,它是一个用于...
在这个特定的场景中,我们关注的是如何使用Struts来实现文件的上传和下载功能。这个功能对于任何Web应用来说都是非常重要的,因为它允许用户交互地处理数据和资源。 首先,我们需要理解文件上传的基本流程。在...
1. **配置文件**:Struts框架的配置文件通常为struts-config.xml,其中定义了Action、Form Beans、DataSources、Plug-ins等元素,用于配置应用的路由、数据绑定和扩展功能。 2. **Action类**:Action类是处理用户...
1. **预处理方法**:在文件下载之前,可能需要进行一些预处理操作,比如验证用户权限、检查文件是否存在或者是否允许下载等。 2. **文件读取方法**:通常会使用Java的`FileInputStream`或`BufferedInputStream`来...
例如,Struts 1和Struts 2在处理文件上传和下载的方式上有显著区别,Struts 2引入了更多面向Action的API和拦截器机制。 5. **源代码分析** 在提供的压缩包文件`upload`中,可能包含了Action类、Struts配置文件、...
1. Struts2的Action类:负责接收前端上传请求,处理文件保存,并可能返回一个JSON响应,包含上传进度信息。 2. JSP或HTML页面:使用Uploadify插件的JavaScript代码,展示上传界面和进度条,用户可以通过此界面选择...
《Struts快速学习指南》可能是针对初学者的一份教程,它通过实例教学的方式,快速引导读者掌握Struts1的基本用法,包括配置文件编写、控制器设计、视图展示、数据验证等核心技能。这份指南通常会强调实践操作,帮助...
在Struts1中,实现文件上传和下载功能是常见的需求,这对于处理用户提交的文件,如图片、文档等,至关重要。下面将详细解释如何在Struts1中实现这两个操作。 首先,我们关注文件上传。在Struts1中,文件上传主要...
在这个特定的项目中,我们关注的是"struts2文件上传下载"的功能,这涉及到用户通过Web界面上传文件到服务器,以及从服务器下载文件到用户的设备。 文件上传是Web应用中的常见需求,例如用户可能需要提交图片、文档...
Struts1 API是开发者在使用该框架时的重要参考文档,提供了详细的类、接口和方法描述,帮助开发者理解和使用Struts1的各种功能。 在Struts1框架中,核心组件包括ActionForm、Action、DispatcherServlet(Controller...