Excel生成的例子!

原创 2006年06月22日 12:02:00

import java.io.FileOutputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;

public class ExpExcel {
private final static SimpleDateFormat FORMAT = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");

public static void main(String[] args) {
System.out.println("start time:" + FORMAT.format(new Date()));
genericExcel(true);
System.out.println("end   time:" + FORMAT.format(new Date()));
}

/**
 * @param haveTitle
 *            是否导出表头
 */
public static void genericExcel(boolean haveTitle) {
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver")
.newInstance();
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=User4Every";

String user = "sa";
String password = "sa";
Connection conn = java.sql.DriverManager.getConnection(url, user,
password);
String fileName = "E://report.xls";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from TPJBjbxx");

ResultSetMetaData rsmd = rs.getMetaData();
int columnCount = rsmd.getColumnCount();
FileOutputStream fileOut = new FileOutputStream(fileName);
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet(0 + "");
wb.setSheetName(0, "报表1", (short) 1);
HSSFCellStyle cs = wb.createCellStyle(); // 格式对象
HSSFFont fCol = wb.createFont(); // 字体对象,表头
fCol.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
HSSFRow row = null;
HSSFCell cell = null;
int nrow = 0;
String s_colType;
if (haveTitle) {
row = sheet.createRow((short) nrow);
for (int i = 0; i < columnCount; i++) {
cell = row.createCell((short) i);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
cs.setFont(fCol);
cs.setAlignment(HSSFCellStyle.ALIGN_CENTER);
cell.setCellStyle(cs);
cell.setCellValue(rsmd.getColumnName(i + 1));
}
nrow++;
}
while (rs.next()) {
row = sheet.createRow((short) nrow);
for (int i = 0; i < columnCount; i++) {
s_colType = rsmd.getColumnTypeName(i + 1);
cell = row.createCell((short) i);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
// 根据字段的类型设置单元格的值
if (s_colType.compareTo("int") == 0) {
cell.setCellValue(rs.getInt(i + 1));
} else if (s_colType.compareTo("decimal") == 0) {
cell.setCellValue(rs.getDouble(i + 1));
} else {
// 除了以上的几种数据类型均以String型对待
cell.setCellValue(rs.getObject(i + 1) + "");
}
}
nrow++;
}
rs.close();
stmt.close();
conn.close();
wb.write(fileOut);
fileOut.close();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}

/**
 * 将ResultSet类型转换为ArrayList类型
 * @param rs
 * @return ArrayList
 * @throws SQLException
 */
public static ArrayList rsToArrayList(ResultSet rs) throws SQLException {
ResultSetMetaData rsmd = rs.getMetaData();
int columnCount = rsmd.getColumnCount();
ArrayList rows = new ArrayList();
while (rs.next()) {
HashMap row = new HashMap();
for (int i = 1; i <= columnCount; i++) {
String name = rsmd.getColumnName(i);
row.put(name, rs.getObject(i));
}
rows.add(row);
}
return rows;
}
}

关于Jxl导出excel的简单实例

关于Jxl导出excel的简单实例
  • qq_19524879
  • qq_19524879
  • 2015年12月03日 10:31
  • 1158

java中jxl导出数据到excel的例子

转载自:http://www.cnblogs.com/kkcheng/archive/2010/02/03/1662832.html 要往xls文件里面写入数据的时候需要注意的是第一要新建一...
  • u012377333
  • u012377333
  • 2016年07月05日 19:18
  • 2142

java POI 操作EXCEL小例子+各种属性

java POI 操作EXCEL小例子+各种属性
  • love_xiolan
  • love_xiolan
  • 2017年01月18日 14:25
  • 1500

excel的生成与表头的合并的一个例子

package test1; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputS...
  • xiegongmiao
  • xiegongmiao
  • 2017年12月15日 17:23
  • 13

jxl 生成Excel 例子两个

1. package com.hangyuan.sample; import java.io.FileOutputStream; import java.io.OutputStream;...
  • lili518
  • lili518
  • 2017年11月02日 16:40
  • 40

poi excel报表生成的流程和例子

poi excle报表生成,下载
  • huanglgln
  • huanglgln
  • 2014年11月11日 16:58
  • 470

POI生成Excel一个简单的分页例子

POI生成Excel一个简单的分页例子 其实分页很简单,当前页面记录数满足分页条件后,用工作簿对象再创一个sheet。 实现思路如下: 1、定义每页最大的记录数。 2、根据最大记录...
  • longdage1992
  • longdage1992
  • 2015年09月12日 16:40
  • 1422

asp.net Aspose生成 导出 导入 excel word 例子+帮助文档【CSDN11个例子】

  • 2014年12月24日 19:48
  • 33.94MB
  • 下载

Java Web利用POI导出Excel简单例子

采用Spring mvc架构:  Controller层代码如下  @Controller public class StudentExportController{ ...
  • ptzrbin
  • ptzrbin
  • 2013年04月02日 14:28
  • 56935

matlab 建立excel表格----例子

function ceshi_Excel %利用MATLAB生成Excel文档 %   ceshi_Excel % %   Copyright 2009 - 2...
  • yyywww666
  • yyywww666
  • 2016年09月08日 10:28
  • 2291
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Excel生成的例子!
举报原因:
原因补充:

(最多只允许输入30个字)