在jxl.jar包下把excel内容导入到数据库
2009-03-09 21:20
399 查看
package mes;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.util.*;
import java.sql.*;
import jxl.Workbook;
import jxl.Sheet;
import jxl.Cell;
//本实例为在jxl.jar包下开发的,下载jxl.jar包并导入到自己的工程中
// 把excel 导入到数据库中Connection con为连接数据库的对象
public class ExceltoResult {
public static synchronized void createExcelFile(Connection con,String name) throws Exception {
try{
//name为文件名 直接从本地文件创建Workbook一旦创建了Workbook,我们就可以通过它来访问Excel Sheet(术语:工作表)
InputStream is = new FileInputStream(name);
//从输入流创建Workbook
jxl.Workbook rwb = Workbook.getWorkbook(is);
//获取第一张Sheet表一旦得到了Sheet,我们就可以通过它来访问Excel Cell(术语:单元格)
Sheet rs1 = rwb.getSheet(0);
sheettoResult(con,rs1);
//关闭Excel工作薄对象
rwb.close();
}
catch(Exception e){
e.getStackTrace();
}
}
//函数为获取单元格的内容
private static void sheettoResult(Connection con,Sheet sheet)
throws Exception {
//因为第一行是列名,所以内容从第二行开始取。(列名最好对应数据库中相关的字段)
int row=1;
//获得excel中的列的个数
int columns=sheet.getColumns();
//获得单元格的行数
int c=sheet.getRows();
Statement stm=con.createStatement();
while(row<=c){
//用列表存放相关的内容
List list=new LinkedList();
//一次按列取相关的值
for(int i=0;i<columns;i++){
//获得单元格对象 下面是第row行,第i列单元格
Cell cel=sheet.getCell(i,row);
//获得单元格中的内容。
String strc= cel.getContents();
list.add(strc);
}
相关的sql语句。按自己的需求写
String sql="insert into t_tg_gatherRecord values(seq_tg_GatherRecord.nextval,"+list.get(0)+","
+"'"+list.get(1)+"',"+list.get(2)+",sysdate,'"+list.get(3)+"')";
stm.executeUpdate(sql);
list.clear();
row++;
}
stm.close();
}
}
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.util.*;
import java.sql.*;
import jxl.Workbook;
import jxl.Sheet;
import jxl.Cell;
//本实例为在jxl.jar包下开发的,下载jxl.jar包并导入到自己的工程中
// 把excel 导入到数据库中Connection con为连接数据库的对象
public class ExceltoResult {
public static synchronized void createExcelFile(Connection con,String name) throws Exception {
try{
//name为文件名 直接从本地文件创建Workbook一旦创建了Workbook,我们就可以通过它来访问Excel Sheet(术语:工作表)
InputStream is = new FileInputStream(name);
//从输入流创建Workbook
jxl.Workbook rwb = Workbook.getWorkbook(is);
//获取第一张Sheet表一旦得到了Sheet,我们就可以通过它来访问Excel Cell(术语:单元格)
Sheet rs1 = rwb.getSheet(0);
sheettoResult(con,rs1);
//关闭Excel工作薄对象
rwb.close();
}
catch(Exception e){
e.getStackTrace();
}
}
//函数为获取单元格的内容
private static void sheettoResult(Connection con,Sheet sheet)
throws Exception {
//因为第一行是列名,所以内容从第二行开始取。(列名最好对应数据库中相关的字段)
int row=1;
//获得excel中的列的个数
int columns=sheet.getColumns();
//获得单元格的行数
int c=sheet.getRows();
Statement stm=con.createStatement();
while(row<=c){
//用列表存放相关的内容
List list=new LinkedList();
//一次按列取相关的值
for(int i=0;i<columns;i++){
//获得单元格对象 下面是第row行,第i列单元格
Cell cel=sheet.getCell(i,row);
//获得单元格中的内容。
String strc= cel.getContents();
list.add(strc);
}
相关的sql语句。按自己的需求写
String sql="insert into t_tg_gatherRecord values(seq_tg_GatherRecord.nextval,"+list.get(0)+","
+"'"+list.get(1)+"',"+list.get(2)+",sysdate,'"+list.get(3)+"')";
stm.executeUpdate(sql);
list.clear();
row++;
}
stm.close();
}
}
相关文章推荐
- Java 使用jxl.jar 导入导出Excel数据
- Java 使用poi导入excel,结合xml文件进行数据验证的例子(增加了jar包)
- jxl导入数据到EXCEL
- jxl导入excel数据时的问题
- 使用jxl.jar 读取excel表格数据
- java导入excel数据内容存入数据库
- 使用JXl实现excel数据的导入,读取数据
- 利用jxl向Excel中导入数据示例代码
- 基于JXL的Excel数据导入工具
- Java解释Excel数据(jxl.jar包的使用)
- java导入导出excel操作(jxl)jxl.jar 包
- Java解释Excel数据(jxl.jar包的使用)
- 【Java】用jxl.jar更改数据格式 读入写出excel
- JXL将excel的数据导入到数据库
- 使用jxl.jar处理excel文档,创建的excel文件不能写入数据
- excel内容导入数据库数据丢失问题的分析几解决方法
- Java解释Excel数据(jxl.jar包的使用)
- java通过jxl.jar实现excel导入导出
- json文件 数据导入excel----->(jxl)
- 数据导入,可以将txt文本文件或excel的内容导入到数据库