文件导出

我这里做的比较简单,就点击导出按钮,到后台写一个导出地址

jsp代码如下

 <%@ page import="mc.global.demo.Export" %>
<%@ page import="java.util.List" %>
<%@ page import="net.sf.json.JSONArray" %>
<%--
  Created by IntelliJ IDEA.
  User: Administrator
  Date: 2015/7/28
  Time: 11:19
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
  String data = (String)request.getAttribute("data") ;
%>
<html>
<head>
  <title>上传Excel</title>
  <%@ include file="/global/commonPage/includeHead/head.jsp" %>
  <script type="text/javascript" src="<%=baseUrl%>/global/scripts/jquery/jquery-1.7.2.min.js"></script>
  <script type="text/javascript" src="<%=baseUrl%>/global/scripts/jsrender.js"></script>
</head>
<script>
 function exportClik(){
    var file=document.getElementById("fileName").value;
    fileForm.action = "<%=baseUrl%>/upImageFile.do?method=exportExcel";
    fileForm.submit();
  }
</script>
<body>
<form action="" enctype="multipart/form-data" id="fileForm" name="fileForm"  method="post" >
  <div id="filePanel">
    <table >
      <tr>
        <td width="100px" style="font-size:10px;text-align:center"></td>
        <td><input type="file" id="fileName" name="fileName"  /></td>
        <td style="width:80px"><input type="button" value="导入"  onclick="javascript:improtBudgetVersion()"  id="import1"/></td>
        <td><input type="button" value="导出" onclick="exportClik()" id="export" style="right: auto"></td>
      </tr>
    </table>
      </div>
</form>
</body>
</html>

java 代码,需要jxl及io流jar包

import com.brainlong.framework.struts.BaseDispatchAction;
import jxl.Sheet;
import jxl.Workbook;
import jxl.format.Alignment;
import jxl.format.Colour;
import jxl.write.*;
import jxl.write.biff.RowsExceededException; 
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;

public class UpImageFileAction extends BaseDispatchAction { 
 ActionForward exportExcel(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)IOException{
        String outputFileName = ;
        String title = ;
        List<String> list =ArrayList<String>();
        list.add();
        list.add();
        list.add();
        list.add();
        list.add();
        WritableWorkbook testBook;
        {
          
            String path=;
OutputStream os = FileOutputStream(path);
            testBook = Workbook.(os);
            WritableSheet ws=testBook.createSheet(outputFileName,);
WritableFont font1 =WritableFont(WritableFont.(), ,WritableFont.);
            WritableFont font2 =WritableFont(WritableFont.(), ,WritableFont.);
            WritableCellFormat wcf = WritableCellFormat(font1);
            WritableCellFormat wcf2 = WritableCellFormat(font2);
            WritableCellFormat wcf3 = WritableCellFormat(font2);wcf.setBackground(Colour.);
            wcf.setAlignment(Alignment.);  wcf3.setAlignment(Alignment.);  wcf.setAlignment(jxl.format.Alignment.);
            (list!=&&list.size()>){
                (i=;i<list.size();i++){
                    ws.addCell(Label(i,,list.get(i),wcf ));
                }
            }

            ws.addCell(Label(,,));
            ws.addCell(Label(,,));
            ws.addCell(Label(,,));
            ws.addCell(Label(,,));
            testBook.write();
            testBook.close();
            os.flush();
            os.close();

        } (FileUploadException e) {
            e.printStackTrace();
        } (RowsExceededException e) {
            e.printStackTrace();
        } (WriteException e) {
            e.printStackTrace();
        }
            ;
    }
}
时间: 2024-11-09 20:54:19

文件导出的相关文章

Markdown文件导出为HTML的小程序

Markdown文件导出为HTML的小程序 为什么做 最近把一些学习经验记下来,总结成MarkDown文件,不知不觉已经有12篇了. Sublime Text 的 MarkDown Preview 插件能够将MarkDown语法转换为HTML,并提供三种预览方式:浏览器预览.保存为HTML文件.输出到Sublime的新标签页. 但有一个缺点是,我有12个MarkDown文件,想分别转换为HTML文件,需要重复执行12次打开文件->Crtl+P调出命令面板->输入MarkDown Preview

C# CS格式文件导出为Dll库

[1]使用的工具 VS开发人员命令提示.安装VS后,在开始菜单的VS工具的目录下可以看到该命令工具. [2]准备需要导出的CS文件 导出的Dll需要准备所有相互依赖的CS文件,如果存在多个就需要准备多个. [3]编写命令行导出Dll 模版是: csc /target:library /out: "目的Dll全路径" "源CS路径1" "源CS路径2" ... "源CS路径n" 如: csc /target:library /o

【独立开发人员er Cocos2d-x实战 001】csb文件导出和载入

使用cocos studio进行资源文件导出: 然后在cocosproject中进行载入csb文件: auto myLayout = CSLoader::createNode("/res/Desktop/Layer.csb"); addChild(myLayout); 执行时遇到一个问题-- cocos studio编辑和cocos2dx执行不一致: 上述问题是因为exe文件找不到资源.后来发现我们须要将相关的资源copy到Resources文件夹下, 同一时候白色字体的解决方法是在c

php excel文件导出之phpExcel扩展库

php Excel  文件导出 phpExcel 官网 http://phpexcel.codeplex.com/ /** * 导出特定文件 * 根据具体情况而定 */ public function download(){ //1. 从数据库来获取对应的二维数组 $alist = array(...); $list = $alist; $data = array(); //2. 设置xls的 表头名 $headArr = array("排名","姓名","

比较恶心的360老年版浏览器 文件导出下载

function export_txt($data) { Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); $destination_folder='./Public/file/'; //txt文件 $file_name=iconv('utf-8', 'gbk', '账号卡信息').date('Y-m-d H-i-s',time()).'.txt'; $

FileUtils 文件下载 文件导出

public class FileUtils { /// <summary> /// 文件下载 /// </summary> /// <param name="page">页面参数</param> /// <param name="filePath">文件源路径</param> /// <param name="saveFileName">文件命名</par

将man文件导出为文本的脚本

因为我需要翻译一些自己的东西,所以,写了个简单的脚本,把man文件导出文本到txt文件,然后再进行翻译 代码如下: #!/bin/sh echo "I will save the man command to file" man $1 | col -b > /home/master/man_chinese/$1.txt if [ -f /home/master/man_chinese/$1.txt ] then echo "successed" else ec

Jmeter_实现Excel文件导出到本地

一般而言,对于页面的"导出"操作,主要经历如下两个操作:①根据数据库的内容,将文件导出到应用服务器上:②将服务器上的文件下载到本地电脑: Jmeter同LoadRunner类似,只能记录服务端与客户端之间的数据流转,而不能记录本地操作,因此对于含有导出功能的性能需求,将服务端的文件下载到本地电脑,需要我们手工加入代码实现(上面所述的步骤②). [1.导出请求分析]"导出"操作对应的两个请求如下: [2.获取文件的服务端路径] 在请求"97"下使用

C#+OpenGL+FreeType显示3D文字(1) - 从TTF文件导出字形贴图

C#+OpenGL+FreeType显示3D文字(1) - 从TTF文件导出字形贴图 +BIT祝威+悄悄在此留下版了个权的信息说: 最近需要用OpenGL绘制文字,这是个很费时费力的事.一般的思路就是解析TTF文件从而得到字形的贴图,然后通过OpenGL绘制贴图的方式显示文字. 本篇记录了解析TTF文件并把所有字形安排到一张大贴图上的过程. 使用FreeType 想从零开始解析TTF文件是一个比较大的工程,所以目前就借助FreeType.FreeType是一个开源的跨平台的TTF文件解析器.当然

【独立开发者er Cocos2d-x实战 001】csb文件导出和加载

使用cocos studio进行资源文件导出: 然后在cocos工程中进行加载csb文件: auto myLayout = CSLoader::createNode("/res/Desktop/Layer.csb"); addChild(myLayout); 运行时遇到一个问题-- cocos studio编辑和cocos2dx运行不一致: 上述问题是由于exe文件找不到资源,后来发现我们需要将相关的资源copy到Resources目录下, 同时白色字体的解决方法是在cocos stu