- 浏览: 72837 次
- 性别:
- 来自: 惠州
文章分类
最新评论
-
woyaonuli:
各位大侠,请教下,怎么让生成的pdf每页都有背景图片, ...
iText 跨行and背景图片 -
lixia0417:
恩,LZ,谢谢了,那我还是练习把SSh的例子改成S2sh的吧, ...
struts2+hibernate3+spring2读书笔记4(数据校验器) -
hhr_michael:
哥们,你好,这本书着重s2sh的各个部分开发,而整合的例子不是 ...
struts2+hibernate3+spring2读书笔记4(数据校验器) -
lixia0417:
对,哥们,问一下,这本书中关于S2SH整合开发的例子多吗,就是 ...
struts2+hibernate3+spring2读书笔记4(数据校验器) -
hhr_michael:
谢谢提醒,由于只是着重校验的过程,所以这代码没有在struts ...
struts2+hibernate3+spring2读书笔记4(数据校验器)
java 生成excel (轉)
关键字: java 生成excel
1.类文件makexls
package com;
import java.io.File;
import java.sql.*;
import java.util.Calendar;
import com.custom.util.ConnectionCustom;
import jxl.Workbook;
import jxl.write.*;
// Referenced classes of package com:
// connection
public class makexls
{
public makexls()
{
DBconn = new ConnectionCustom();
conn = DBconn.getConnection();
stmt = null;
stmt1 = null;
rs = null;
rs1 = null;
cu = 0;
path1 = "";
bigstr = "";
}
public static String replaceString(String s, String s1, String s2)
{
byte byte0 = -1;
boolean flag = false;
int j = s1.length();
StringBuffer stringbuffer = new StringBuffer();
for(int i = s.indexOf(s1); i != -1; i = s.indexOf(s1))
{
stringbuffer.append(s.substring(0, i));
stringbuffer.append(s2);
s = s.substring(i + j);
}
stringbuffer.append(s);
return stringbuffer.toString();
}
public String nowServerTime()
{
Calendar calendar = Calendar.getInstance();
String s = String.valueOf(calendar.get(1));
String s1 = String.valueOf(calendar.get(2) + 1);
String s2 = String.valueOf(calendar.get(5) + 1);
String s3 = String.valueOf(calendar.get(10));
String s4 = String.valueOf(calendar.get(12));
String s5 = String.valueOf(calendar.get(13));
s1 = Integer.parseInt(s1) > 9 ? s1 : "0" + s1;
s2 = Integer.parseInt(s2) > 9 ? s2 : "0" + s2;
String s6 = String.valueOf((int)(Math.random() * 100000D));
String s7 = "_" + s6 + "_" + s + s1 + s2 + s3 + s4 + s5;
return s7;
}
public String makexls(String s, String s1, String s2, String as[])
{
try
{
String s3 = s;
File file = new File(s3);
String as1[] = file.list();
for(int i = 0; i < as1.length; i++)
if(as1[i].length() >= 21)
{
String s6 = as1[i].substring(13, 21);
Calendar calendar = Calendar.getInstance();
int j = calendar.get(5);
calendar.set(5, j - 3);
int k = calendar.get(1);
int l = calendar.get(2) + 1;
int j1 = calendar.get(5);
String s7 = String.valueOf(k) + (l > 9 ? String.valueOf(l) : "0" + String.valueOf(l)) + (j1 > 9 ? String.valueOf(j1) : "0" + String.valueOf(j1));
if(s6.compareTo(s7) <= 0)
{
File file1 = new File(s3 + "/" + as1[i]);
file1.delete();
}
}
}
catch(Exception exception) { }
String s4 = "";
try
{
Workbook workbook = Workbook.getWorkbook(new File(s1));
path1 = s + "result" + nowServerTime() + ".xls";
WritableWorkbook writableworkbook = Workbook.createWorkbook(new File(path1), workbook);
WritableSheet writablesheet = writableworkbook.getSheet(0);
jxl.write.WritableCell writablecell = writablesheet.getWritableCell(0, 0);
ResultSetMetaData resultsetmetadata = null;
stmt = conn.createStatement();
stmt1 = conn.createStatement();
try
{
//System.out.println("s2==sql==="+s2);
rs = stmt.executeQuery(s2);
if(rs.next())
resultsetmetadata = rs.getMetaData();
//System.out.println("resultsetmetadata========="+resultsetmetadata.getColumnCount());//得到结果集(rs)的结构信息,比如字段数、字段名等。
}
catch(Exception exception2)
{
rs = null;
}
boolean flag = false;
if(rs != null)
{
for(int i1 =1;i1 <= resultsetmetadata.getColumnCount(); i1++)
{
Label label = new Label(i1 - 1, 0, as[i1 - 1]);
writablesheet.addCell(label);
//rs.beforeFirst();
cu = 0;
Label label1;
int j=0;
rs1 = stmt1.executeQuery(s2);
for(; rs1.next(); writablesheet.addCell(label1))
{
//System.out.println(j);
cu = cu + 1;
String s5 = rs1.getString(resultsetmetadata.getColumnName(i1)) == null ? "" : rs1.getString(resultsetmetadata.getColumnName(i1));
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"´","\'");
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"'","\'");
label1 = new Label(i1 - 1, cu, s5);
j++;
}
}
}
rs1.close();
rs.close();
writableworkbook.write();
writableworkbook.close();
workbook.close();
}
catch(Exception exception1)
{
exception1.printStackTrace();
}
return path1;
}
public String makexlsWidthConn(String s, String s1, String s2, String as[],Connection conn1)
{
try
{
String s3 = s;
File file = new File(s3);
String as1[] = file.list();
for(int i = 0; i < as1.length; i++)
if(as1[i].length() >= 21)
{
String s6 = as1[i].substring(13, 21);
Calendar calendar = Calendar.getInstance();
int j = calendar.get(5);
calendar.set(5, j - 3);
int k = calendar.get(1);
int l = calendar.get(2) + 1;
int j1 = calendar.get(5);
String s7 = String.valueOf(k) + (l > 9 ? String.valueOf(l) : "0" + String.valueOf(l)) + (j1 > 9 ? String.valueOf(j1) : "0" + String.valueOf(j1));
if(s6.compareTo(s7) <= 0)
{
File file1 = new File(s3 + "/" + as1[i]);
file1.delete();
}
}
}
catch(Exception exception) { }
String s4 = "";
try
{
Workbook workbook = Workbook.getWorkbook(new File(s1));
path1 = s + "result" + nowServerTime() + ".xls";
WritableWorkbook writableworkbook = Workbook.createWorkbook(new File(path1), workbook);
WritableSheet writablesheet = writableworkbook.getSheet(0);
jxl.write.WritableCell writablecell = writablesheet.getWritableCell(0, 0);
ResultSetMetaData resultsetmetadata = null;
stmt = conn1.createStatement();
stmt1 = conn1.createStatement();
try
{
//System.out.println("s2==sql==="+s2);
rs = stmt.executeQuery(s2);
if(rs.next())
resultsetmetadata = rs.getMetaData();
//System.out.println("resultsetmetadata========="+resultsetmetadata.getColumnCount());//得到结果集(rs)的结构信息,比如字段数、字段名等。
}
catch(Exception exception2)
{
rs = null;
}
boolean flag = false;
if(rs != null)
{
for(int i1 =1;i1 <= resultsetmetadata.getColumnCount(); i1++)
{
Label label = new Label(i1 - 1, 0, as[i1 - 1]);
writablesheet.addCell(label);
//rs.beforeFirst();
cu = 0;
Label label1;
int j=0;
rs1 = stmt1.executeQuery(s2);
for(; rs1.next(); writablesheet.addCell(label1))
{
//System.out.println(j);
cu = cu + 1;
String s5 = rs1.getString(resultsetmetadata.getColumnName(i1)) == null ? "" : rs1.getString(resultsetmetadata.getColumnName(i1));
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"´","\'");
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"'","\'");
label1 = new Label(i1 - 1, cu, s5);
j++;
}
}
}
rs1.close();
rs.close();
writableworkbook.write();
writableworkbook.close();
workbook.close();
}
catch(Exception exception1)
{
exception1.printStackTrace();
}
return path1;
}
private ConnectionCustom DBconn;
private Connection conn;
Statement stmt;
Statement stmt1;
ResultSet rs;
ResultSet rs1;
int cu;
String path1;
String bigstr;
}
2.调用
String[] listTitle=new String[]{"産品編號","産品版本","客戶産品編號","倉點編號","入倉時間","入倉單號","單重 ","單價","本期結存"," ","0---30天"," ","","31---60天 "," ","","61---90天 "," ","","61---90天"," ","","121---150天 "," ","","151---180天 "," ","","181---210天 "," ","","211---240天"," ",""," 241---270天"," ","","271---300天 "," ","","301---330天 "," ","","331---360天 "," ","","361天以上 "," ","總結遇","總重","總價"};
String modefile="2005031017198.xls";//一个空excel文件
String path3=request.getRealPath("/report/template/");//空excel文件路径
path3=path3+"/";
String mopa=request.getRealPath("/report/report/");//生成excel保存路径
mopa=mopa+"/";
String mfile=path3+modefile;
// pathtemp=makexls(mopa,mfile,sql,listTitle,conn);
pathtemp=makexls(mopa,mfile,sql,listTitle);
if (!"".equals(pathtemp)){
int len=pathtemp.length();
int j=pathtemp.indexOf("result");
pathtemp=pathtemp.substring(j,len);
}
关键字: java 生成excel
1.类文件makexls
package com;
import java.io.File;
import java.sql.*;
import java.util.Calendar;
import com.custom.util.ConnectionCustom;
import jxl.Workbook;
import jxl.write.*;
// Referenced classes of package com:
// connection
public class makexls
{
public makexls()
{
DBconn = new ConnectionCustom();
conn = DBconn.getConnection();
stmt = null;
stmt1 = null;
rs = null;
rs1 = null;
cu = 0;
path1 = "";
bigstr = "";
}
public static String replaceString(String s, String s1, String s2)
{
byte byte0 = -1;
boolean flag = false;
int j = s1.length();
StringBuffer stringbuffer = new StringBuffer();
for(int i = s.indexOf(s1); i != -1; i = s.indexOf(s1))
{
stringbuffer.append(s.substring(0, i));
stringbuffer.append(s2);
s = s.substring(i + j);
}
stringbuffer.append(s);
return stringbuffer.toString();
}
public String nowServerTime()
{
Calendar calendar = Calendar.getInstance();
String s = String.valueOf(calendar.get(1));
String s1 = String.valueOf(calendar.get(2) + 1);
String s2 = String.valueOf(calendar.get(5) + 1);
String s3 = String.valueOf(calendar.get(10));
String s4 = String.valueOf(calendar.get(12));
String s5 = String.valueOf(calendar.get(13));
s1 = Integer.parseInt(s1) > 9 ? s1 : "0" + s1;
s2 = Integer.parseInt(s2) > 9 ? s2 : "0" + s2;
String s6 = String.valueOf((int)(Math.random() * 100000D));
String s7 = "_" + s6 + "_" + s + s1 + s2 + s3 + s4 + s5;
return s7;
}
public String makexls(String s, String s1, String s2, String as[])
{
try
{
String s3 = s;
File file = new File(s3);
String as1[] = file.list();
for(int i = 0; i < as1.length; i++)
if(as1[i].length() >= 21)
{
String s6 = as1[i].substring(13, 21);
Calendar calendar = Calendar.getInstance();
int j = calendar.get(5);
calendar.set(5, j - 3);
int k = calendar.get(1);
int l = calendar.get(2) + 1;
int j1 = calendar.get(5);
String s7 = String.valueOf(k) + (l > 9 ? String.valueOf(l) : "0" + String.valueOf(l)) + (j1 > 9 ? String.valueOf(j1) : "0" + String.valueOf(j1));
if(s6.compareTo(s7) <= 0)
{
File file1 = new File(s3 + "/" + as1[i]);
file1.delete();
}
}
}
catch(Exception exception) { }
String s4 = "";
try
{
Workbook workbook = Workbook.getWorkbook(new File(s1));
path1 = s + "result" + nowServerTime() + ".xls";
WritableWorkbook writableworkbook = Workbook.createWorkbook(new File(path1), workbook);
WritableSheet writablesheet = writableworkbook.getSheet(0);
jxl.write.WritableCell writablecell = writablesheet.getWritableCell(0, 0);
ResultSetMetaData resultsetmetadata = null;
stmt = conn.createStatement();
stmt1 = conn.createStatement();
try
{
//System.out.println("s2==sql==="+s2);
rs = stmt.executeQuery(s2);
if(rs.next())
resultsetmetadata = rs.getMetaData();
//System.out.println("resultsetmetadata========="+resultsetmetadata.getColumnCount());//得到结果集(rs)的结构信息,比如字段数、字段名等。
}
catch(Exception exception2)
{
rs = null;
}
boolean flag = false;
if(rs != null)
{
for(int i1 =1;i1 <= resultsetmetadata.getColumnCount(); i1++)
{
Label label = new Label(i1 - 1, 0, as[i1 - 1]);
writablesheet.addCell(label);
//rs.beforeFirst();
cu = 0;
Label label1;
int j=0;
rs1 = stmt1.executeQuery(s2);
for(; rs1.next(); writablesheet.addCell(label1))
{
//System.out.println(j);
cu = cu + 1;
String s5 = rs1.getString(resultsetmetadata.getColumnName(i1)) == null ? "" : rs1.getString(resultsetmetadata.getColumnName(i1));
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"´","\'");
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"'","\'");
label1 = new Label(i1 - 1, cu, s5);
j++;
}
}
}
rs1.close();
rs.close();
writableworkbook.write();
writableworkbook.close();
workbook.close();
}
catch(Exception exception1)
{
exception1.printStackTrace();
}
return path1;
}
public String makexlsWidthConn(String s, String s1, String s2, String as[],Connection conn1)
{
try
{
String s3 = s;
File file = new File(s3);
String as1[] = file.list();
for(int i = 0; i < as1.length; i++)
if(as1[i].length() >= 21)
{
String s6 = as1[i].substring(13, 21);
Calendar calendar = Calendar.getInstance();
int j = calendar.get(5);
calendar.set(5, j - 3);
int k = calendar.get(1);
int l = calendar.get(2) + 1;
int j1 = calendar.get(5);
String s7 = String.valueOf(k) + (l > 9 ? String.valueOf(l) : "0" + String.valueOf(l)) + (j1 > 9 ? String.valueOf(j1) : "0" + String.valueOf(j1));
if(s6.compareTo(s7) <= 0)
{
File file1 = new File(s3 + "/" + as1[i]);
file1.delete();
}
}
}
catch(Exception exception) { }
String s4 = "";
try
{
Workbook workbook = Workbook.getWorkbook(new File(s1));
path1 = s + "result" + nowServerTime() + ".xls";
WritableWorkbook writableworkbook = Workbook.createWorkbook(new File(path1), workbook);
WritableSheet writablesheet = writableworkbook.getSheet(0);
jxl.write.WritableCell writablecell = writablesheet.getWritableCell(0, 0);
ResultSetMetaData resultsetmetadata = null;
stmt = conn1.createStatement();
stmt1 = conn1.createStatement();
try
{
//System.out.println("s2==sql==="+s2);
rs = stmt.executeQuery(s2);
if(rs.next())
resultsetmetadata = rs.getMetaData();
//System.out.println("resultsetmetadata========="+resultsetmetadata.getColumnCount());//得到结果集(rs)的结构信息,比如字段数、字段名等。
}
catch(Exception exception2)
{
rs = null;
}
boolean flag = false;
if(rs != null)
{
for(int i1 =1;i1 <= resultsetmetadata.getColumnCount(); i1++)
{
Label label = new Label(i1 - 1, 0, as[i1 - 1]);
writablesheet.addCell(label);
//rs.beforeFirst();
cu = 0;
Label label1;
int j=0;
rs1 = stmt1.executeQuery(s2);
for(; rs1.next(); writablesheet.addCell(label1))
{
//System.out.println(j);
cu = cu + 1;
String s5 = rs1.getString(resultsetmetadata.getColumnName(i1)) == null ? "" : rs1.getString(resultsetmetadata.getColumnName(i1));
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"´","\'");
s5=replaceString(s5,""","\"");
s5=replaceString(s5,"'","\'");
label1 = new Label(i1 - 1, cu, s5);
j++;
}
}
}
rs1.close();
rs.close();
writableworkbook.write();
writableworkbook.close();
workbook.close();
}
catch(Exception exception1)
{
exception1.printStackTrace();
}
return path1;
}
private ConnectionCustom DBconn;
private Connection conn;
Statement stmt;
Statement stmt1;
ResultSet rs;
ResultSet rs1;
int cu;
String path1;
String bigstr;
}
2.调用
String[] listTitle=new String[]{"産品編號","産品版本","客戶産品編號","倉點編號","入倉時間","入倉單號","單重 ","單價","本期結存"," ","0---30天"," ","","31---60天 "," ","","61---90天 "," ","","61---90天"," ","","121---150天 "," ","","151---180天 "," ","","181---210天 "," ","","211---240天"," ",""," 241---270天"," ","","271---300天 "," ","","301---330天 "," ","","331---360天 "," ","","361天以上 "," ","總結遇","總重","總價"};
String modefile="2005031017198.xls";//一个空excel文件
String path3=request.getRealPath("/report/template/");//空excel文件路径
path3=path3+"/";
String mopa=request.getRealPath("/report/report/");//生成excel保存路径
mopa=mopa+"/";
String mfile=path3+modefile;
// pathtemp=makexls(mopa,mfile,sql,listTitle,conn);
pathtemp=makexls(mopa,mfile,sql,listTitle);
if (!"".equals(pathtemp)){
int len=pathtemp.length();
int j=pathtemp.indexOf("result");
pathtemp=pathtemp.substring(j,len);
}
发表评论
-
itext 带表头
2010-08-12 16:19 1444itext 带表头有两种方法以: 第一种是Table的,第二 ... -
extremeTable 介绍
2010-08-10 16:12 1087何为 extremeTable,又一个开源taglib ext ... -
Java线程:创建与启动 (转)
2010-07-21 08:54 1922版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 ... -
用Java简单的读取pdf文件中的数据(转)
2010-05-20 09:44 1273用Java简单的读取pdf文件中的数据: 第一步:下载PDFB ... -
非java.util.zip,使用ant.jar制作zip压缩文件,以及相关中文解决方法(轉)
2010-02-10 10:52 889用java.util.zip制作zip压缩文件时,如果制作的压 ... -
JSP环境配置使用fckeditor
2010-02-09 09:45 845JSP环境配置使用fckeditor 关键字: jsp环境配置 ... -
jsp分页
2010-02-09 09:32 926jsp分页 (轉) 关键字: jsp分页 public cl ... -
iText 跨行and背景图片
2010-02-09 09:11 2418iText 跨行and背景图片(轉) 最近用iText生成p ... -
input只能输入数字
2010-01-07 15:35 1521input只能输入数字 方法一: <input t ... -
关于DIV被SELECT遮挡问题
2009-12-14 09:00 1020<html> <head> ... -
iText加入页码
2009-11-30 09:18 2858在網上找了點資料,如果單單實現頁碼的顯示,隻需在Documen ... -
struts标签使用举例--logic篇
2009-11-09 15:59 604来源:http://hi.baidu.com/lissnet/ ... -
Eclipse快捷键大全
2009-11-09 12:20 704Ctrl+1 快速修复(最经典 ... -
class.forName().newInstance()的作用
2009-11-02 09:49 1955在Java开发特别是数据库开发中,经常会用到Class.for ... -
[SQLServer]传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确2008-05-28 17:57关键字: sqlserver 2000 d
2009-10-27 15:49 1183[SQLServer]传入的表格格式数据流(TDS)远程过程调 ... -
itext實現水印功能
2009-09-07 12:04 2574近日要用itext來做水印功能,在網上找了好多資料,但都是把原 ... -
pdf成生方法精品
2009-09-07 11:50 786最近由于项目需要,开始使用iText写PDF文件,从网上搜索到 ...
相关推荐
java生成excel图表
Java生成excel文件Java生成excel文件Java生成excel文件Java生成excel文件Java生成excel文件Java生成excel文件Java生成excel文件Java生成excel文件
Java生成excel jxl 代码Java生成excel jxl 代码
java生成excel图表.pdf
java 生成Excel,可根据模板格式生成 Excel打印专用 报表 这个是旧版本的 ,需要新版本的 可以联系我
java生成excel表格需要的3个jar包
java生成excel并下载
java 生成Excel文件 java 生成Excel文件 java 生成Excel文件
Java编程调用PageOffice实现从空白的excel文件动态生成excel表格,设置公式并填充数据。 集成PageOffice不但能够实现在线编辑、保存真正的Office文档,而且还可以轻松实现Word、Excel文档的动态数据填充、格式控制和...
NULL 博文链接:https://pihai.iteye.com/blog/423427
用java ,apache poi生成excel报表
利用Java生成Excel文件,用java来操作excel文件方便实用
在java开发中,通过jxl.jar提供的api可以方便的生成你想要的excel文件。
绝对可以的,java生成excel报表 行和列
java生成excel,java生成excel,java生成excel
java通过jxl生成excel实例,读取excel,复制,修改excel文件
java生成excel表格代码示例,下载后可以直接使用
java生成Excel数据表,动态生成Excel数据表
java生成excel下载
java生成Excel及jar包和文件下载的几种方式.rar