JAVA利用JXL导出 EXCEL (在原有的excel模板上把数据导到excel上)
添加依赖
<dependency>
<groupId>net.sourceforge.jexcelapi</groupId>
<artifactId>jxl</artifactId>
<version>2.6.12</version>
</dependency>
package com.cyg.writeexcel;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
public void writeExcel(){
String path="D:/";
String filePathName = null;
Long nowTime=System.currentTimeMillis();
String title = "导出管理表";
String fileName = title+nowTime;
String sourFile =path+"poi"+File.separatorChar+"exporttemplate"+File.separatorChar+"ymb.xls";//原模板
String destFile = path +"poi"+File.separatorChar+"xlsoutput"+File.separatorChar+nowTime; //复制到存放的目标位置
File file = new File(sourFile);
if(file.isFile()) {
File savefile = new File(destFile);
if (!savefile.exists()) {
savefile.mkdirs();
}
FileInputStream input =new FileInputStream(sourFile);
FileOutputStream output = new FileOutputStream(destFile+File.separatorChar+fileName+".xls");
int in = input.read();
while( in != -1) {
output.write(in);
in =input.read();
}
filePathName =destFile+File.separatorChar+fileName+".xls";
FileInputStream inFile=new FileInputStream(filePathName);
jxl.Workbook workbookA = jxl.Workbook.getWorkbook(inFile);
WritableWorkbook wwb = jxl.Workbook.createWorkbook(new File(filePathName),workbookA);
WritableSheet sheetA = wwb.getSheet(0);// 获取文件第一个sheet
Label labelA = null;
WritableFont font = new WritableFont(WritableFont.createFont("宋体"),
8, WritableFont.NO_BOLD);// 字体样式
WritableCellFormat wcf = new WritableCellFormat(font);
wcf.setAlignment(jxl.format.Alignment.CENTRE);//平行居中
wcf.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE); //垂直居中
wcf.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN,jxl.format.Colour.BLACK); //BorderLineStyle边框
//获取数据源
for (int i = 1; i < 1000; i++) {
labelA = new Label(0,i,i+" ",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(1,i,"20180101" + i,wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(2,i,"开发00"+i,wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(3,i,i+" ");
sheetA.addCell(labelA);
labelA = new Label(4,i,"20180101" + i,wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(5,i,i+" ",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(6,i,"的官方价格就感觉几个几个几个",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(7,i,"的官方价格就感觉几个几个几个",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(8,i,"的官方价格就感觉几个几个几个",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(9,i,"的官方价格就感觉几个几个几个",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(10,i,"的官方价格就感觉几个几个几个",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(11,i,"的官方价格就感觉几个几个几个",wcf);//列、行、值、样式
sheetA.addCell(labelA);
labelA = new Label(12,i,"的官方价格就感觉几个几个几个",wcf);//列、行、值、样式
sheetA.addCell(labelA);
}
output.flush();
output.close();
input.close();
wwb.write(); //写入数据
wwb.close();
workbookA.close(); //关闭连接
System.out.println("完成");
}
}
注:POI支持excel2003和2007,而jxl只支持excel2003。
如果有如下警告
Warning: Cannot read name ranges for _ T o c 521 -setting to empty
Warning: Usage of a local non-builtin name
解决方案:打开模板==》公式==》名称管理器==》删除里面表格的信息
JAVA利用JXL导出 EXCEL (在原有的excel模板上把数据导到excel上)的更多相关文章
- JAVA利用JXL导出/生成 EXCEL
/** * 导出导出采暖市场部收入.成本.利润明细表 * @author JIA-G-Y */ public String exporExcel(String str) { String str=Se ...
- JAVA利用JXL导出/生成 EXCEL1
/** * 导出导出采暖市场部收入.成本.利润明细表 * @author JIA-G-Y */ public String exporExcel(String str) { String str=Se ...
- java利用JXL导出/生成 EXCEL【my】
一.创建一个excel文件 package test;// 生成Excel的类 import java.io.File; import jxl.Workbook;import jxl.write.La ...
- sqlserver将数据库的数据导成excel文档方法
sqlserver将数据库的数据导成excel文档方法 最近公司需要下载uniport的数据跟之前的数据进行对比,所以避免不了需要将数据库的数据导出来,把SQLServer表中的数据导出为Excel文 ...
- java利用jxl实现Excel导入功能
本次项目实践基于Spring+SpringMvc+MyBatis框架,简单实现了Excel模板导出.和Excel批量导入的功能.实现过程如下:. 1.maven导入所需jar包 <depende ...
- Java中用JXL导出Excel代码详解
jxl是一个韩国人写的java操作excel的工具, 在开源世界中,有两套比较有影响的API可供使用,一个是POI,一个是jExcelAPI.其中功能相对POI比较弱一点.但jExcelAPI对中文支 ...
- JAVA利用jxl读取Excel内容
JAVA可以利用jxl简单快速的读取文件的内容,但是由于版本限制,只能读取97-03 xls格式的Excel. import java.io.File; import java.io.FileInp ...
- java利用poi导出数据到excel
背景: 上一篇写到利用jtds连接数据库获取对应的数据,本篇写怎样用poi将数据到处到excel中,此程序为Application 正文: 第三方poi jar包:poi驱动包下载 代码片段: /** ...
- POI根据EXCEL模板,修改内容导出新EXCEL (只支持HSSF)
package excelPoiTest; import java.io.File; import java.io.FileInputStream; import java.io.FileOutput ...
随机推荐
- MVC3中_ViewStart.cshtml的一些事
MVC3中,使用Razor模板引擎的话,会自动生成一个_ViewStart.cshtml文件. 很多人把这个文件当成类似Webform中的Master模板文件,其实这个_ViewStart.cshtm ...
- swapper_pg_dir的作用
在内存系统初始化过程中,有如下代码: 1: static void __init pagetable_init(void) 2: { 3: pgd_t *pgd_base = swapper_pg_d ...
- Gerrit Handbook for Commercial Project
前注:常见‘坑’ 不要使用 2.14 版本 gerrit.conf 中 [sendemail] 部分必须有 from = ... 字段,否则无法添加邮箱 gerrit 以用户组为单位划分权限,先将用户 ...
- C++ 操作json文件
一.环境搭建: 参考文章:https://blog.csdn.net/fakine/article/details/79272090 二.创建实例: #include <stdio.h> ...
- Django框架(六)—— 视图层:HttpRequest、HTTPResponse、JsonResponse、CBV和FBV、文件上传
目录 视图层 一.视图函数 二.视图层之HttpRequest对象 三.视图层之HttpResponse对象 四.视图层之JsonResponse对象 五.CBV和FBV 六.文件上传 视图层 一.视 ...
- leetcode.字符串.242有效的字母异位词-Java
1. 具体题目 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 注:判断两个字符串包含的字母是否完全一样. 示例 1: 输入: s = "anagram&q ...
- 关于Ms Sql server 表列等是否存在
select object_id('名称') ,object_id('名称','类型') 1. 等价于 select * from sys.objects where name ='名称' selec ...
- pycharm的第一次使用(其实并不是第一次)
file --> settings --> editor -->general --> change font size file --> settings --> ...
- spring-boot 集成ehcache报错:org.springframework.expression.spel.SpelEvaluationException: EL1008E:
错误信息:org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field 'pageab ...
- Vue双向数据绑定原理深度解析
首先,什么是双向数据绑定?Vue是三大MVVM框架之一,数据绑定简单来说,就是当数据发生变化时,相应的视图会进行更新,当视图更新时,数据也会跟着变化. 在分析其原理和代码的时候,大家首先了解如下几个j ...