1. poi excel 图片
如果表头固定在第一行,可以扫描表头,获得你需要的数据的列号,例如下面的代码寻找姓名、性别、手机的列号: var c_name,c_sex,c_mobile; for (i=0;i
2. poi导出excel设置行高
你试试设置一下单元格的编码 cell.setCellType(HSSFCell.ENCODING_UTF_8);
3. poi导出设置列宽
合并单元格换行方式跟普通单元格的换行方式一样,有两种方式,一个是设置自动换行,一个是设置强制换行,下面分别介绍。
1、自动换行。
选中合并单元格,右键设置单元格格式,在对齐命令中,选中自动换行。这样改变合并单元格的列宽,数据就跟随列宽的大小自动换行。
2、强制换行。
选中合并单元格,将光标放在需要换行的位置,按下alt+enter键,强制换行。强制换行的数据,不会因单元格列宽的大小而改变。
4. poi导出excel最大条数
Workbook workbook = new SXSSFWorkbook(1000); poi有个机制 每次往内存中写1000条数据,这个1000你可以改的 尽量别大于10000条数据,写完1000条数据后再重新写,这样就不会内存溢出了。
5. poi获取excel列数
百度搜索圈T社区 免费行业视频教程www.aiquanti.com
package com.asima;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
/**
*
* @author asima
* @data 2006-10-18
*/
public class XlsToAccess
{
HSSFSheet globalSheet = null;
/*读取一个指定单元格内容*/
public String readCellValue(String pos)
{
int xpos;
short ypos;
int cellType; /*取得此单元格的类型 0-Numeric,1-String,3-null*/
String result; /*返回取得的单元格的值*/
ypos = (short) (pos.toUpperCase().charAt(0) - 65);
xpos = Integer.parseInt(pos.substring(1, pos.length())) - 1;
HSSFRow row = null; /* 定义excel中的行 */
HSSFCell cell = null; /* 定义excel中的单元格 */
/* 根据xPos和yPos取得单元格 */
row = globalSheet.getRow(xpos);
cell = row.getCell(ypos);
/** **************此处如果是空需要修改********************************** */
cellType = cell.getCellType();
switch (cellType)
{
case 0: /* 0-Numeric */
result = String.valueOf(cell.getNumericCellValue());
break;
case 1: /* 1-String */
result = cell.getStringCellValue();
break;
case 3: /* 3-null */
result = "";
break;
default:
result = "";
break;
}
return result;
}
/*读取excel文件并把内容插入到access表中*/
public void insertIntoTable() throws Exception
{
// 创建对Excel工作簿文件的引用
HSSFWorkbook workbook =
new HSSFWorkbook(new FileInputStream("D:/temp/test.xls"));
// 获得一个sheet
globalSheet = workbook.getSheetAt(0);
String value1 = readCellValue("c1");
String value2 = readCellValue("c2");
String value3 = readCellValue("c3");
String value4 = readCellValue("c4");
System.out.println(value1);
System.out.println(value2);
/* 插入数据库 */
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:asima";
Connection conn = DriverManager.getConnection(url);
PreparedStatement stmt =
conn.prepareStatement("insert into custom values(?,?,?,?)");
// 定义查询的SQL语句
stmt.setString(1, value1);
stmt.setString(2, value2);
stmt.setString(3, value3);
stmt.setString(4, value4);
stmt.executeUpdate
- 相关评论
- 我要评论
-