转载http://blog.163.com/fengzhisha0914@126/blog/static/150314785201102625119277/
需要jar包:
1.poi-ooxml-3.6-20091214.jar
2.poi-3.6-20091214.jar
3.poi-contrib-3.6-20091214.jar
4.poi-examples-3.6-20091214.jar
5.poi-ooxml-schemas-3.6-20091214.jar
6.poi-scratchpad-3.6-20091214.jar
7.xmlbeans-2.3.0.jar
8.openxml4j-bin-beta.jar
9.geronimo-stax-api_1.0_spec-1.0.jar
package com.test;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import com.njdt_oa.common.domain.VHrUser;
import com.njdt_oa.common.util.IExcelReader;
/**
* 用户从Excel批量导入
*
* @author PF
*/
public class UserImport {
private static final int version2003 = 2003;
private static final int version2007 = 2007;
private static int version = version2003;
private static Workbook wb = null;
private static Sheet sheet=null;
private static Cell cell = null;
private static Row row=null;
@SuppressWarnings("static-access")
public List<VHrUser> readExcel(String excelFilePath) throws IOException {
if (excelFilePath.endsWith(".xls"))
version = version2003;
else if (excelFilePath.endsWith(".xlsx"))
version = version2007;
List<VHrUser> list = new ArrayList<VHrUser>();
InputStream stream=null;
if (version == version2003) {
stream = new FileInputStream(excelFilePath);
wb = (Workbook) new HSSFWorkbook(stream);
} else if (version == version2007) {
wb = (Workbook) new XSSFWorkbook(excelFilePath);
}
sheet = wb.getSheetAt(0);
// 行数(从0开始,相当于最后一行的索引),列数
int count_row=sheet.getLastRowNum(),count_cell=sheet.getRow(0).getPhysicalNumberOfCells();
String[][] str=new String[count_row][count_cell];
for (int i = 0; i < count_row; i++) {
for (int j = 0; j < count_cell; j++) {
row=sheet.getRow(i+1);
cell=row.getCell(j);
String obj_content="";
if(cell.getCellType()==cell.CELL_TYPE_BLANK)
obj_content="";
else if(cell.getCellType()==cell.CELL_TYPE_NUMERIC)
obj_content=(int)cell.getNumericCellValue()+"";
else if(cell.getCellType()==cell.CELL_TYPE_STRING)
obj_content=cell.getStringCellValue();
str[i][j]=obj_content;
}
}
cell=null;
row=null;
sheet=null;
wb=null;
for (int k = 0; k < str.length; k++) {
String[] temp_str=str[k];
VHrUser vUser=new VHrUser();
for (int s = 0; s < temp_str.length; s++) {
vUser.setPaixu(new Long(temp_str[s]));
vUser.setOamail(temp_str[s+1]);
vUser.setUsername(temp_str[s+2]);
vUser.setPingying(temp_str[s+3]);
vUser.setUsersex(temp_str[s+4]);
list.add(vUser);
break;
}
}
return list;
}
public static void main(String[] args){
UserImport i=new UserImport();
try {
List<VHrUser>vuser_list = i.readExcel("D:\\Users\\Administrator\\Desktop\\Import_Test.xlsx");
for (VHrUser user : vuser_list) {
System.out.println("用户姓名=="+user.Username);
}
} catch (IOException e) {
e.printStackTrace();
}
System.exit(0);
}
}
注意jar包冲突,如果出现org.apache.poi.POIXMLException: java.lang.reflect.InvocationTargetException。。。检查是否有xbean.xml,删除一般都可以解决。
分享到:
相关推荐
poi导入excel 兼容2003-2007兼容版本,测试可以成功;poi导入excel 兼容2003-2007兼容版本,测试可以成功;
java中poi读写excel封装工具类(兼容office2003和2007等版本),绝对可用的例子!
POI导入导出工具类支持office2003和2007的excel表格导入
NULL 博文链接:https://81365341.iteye.com/blog/1149108
poi读取excel2007和2003兼容工具例子.利用简单工厂方法
POI导入excel大数据处理,支持excel2003,2007, 有例子,可以直接运行
基于poi实现word/excel转换为HTML(且兼容.doc.docx.xls.xlsx) 对于简单的word Excel 转换 足够。excel转换时存在火狐浏览器不兼容乱码问题,希望多多交流。
poi操作excel所需的所有jar包,兼容2003和2007excel操作!
之前用jxl发现不支持excel2007,不得以就去用poi实现excel的读取了!本人亲测的一个实例,支持excel2007!
java使用poi操作excel需要的所有jar包(poi3.8版本),里面有poi-3.8-20120326.jar、poi-ooxml-3.8-20120326.jar、poi-ooxml-schemas-3.8-20120326.jar、dom4j-1.6.1.jar、xmlbeans-2.3.0.jar
poi3.9读写excel完美修订版本 java源码 兼容03和07 可运行 带详细注释 GX了
一个读取excel2003、2007、2010的类
java使用poi操作excel导入导出源码,可以同时兼容03、07版本,所需jar包可以链接http://download.csdn.net/detail/yaohucaizi/5215864进行下载!
JAVA用POI读取和创建2003和2007版本Excel完美示例 同时还有相关的类包 注意工程里面别存在冲突类包
java读取excel,并且兼容2003和2007. 附带实例 可自定义表头,行读取开始位置、结束位置,列开始位置、结束位置
NULL 博文链接:https://ahomeeye.iteye.com/blog/1571090
NULL 博文链接:https://cgs1999.iteye.com/blog/1525665
poi poi-ooxml-3.5-FINAL.jar poi-ooxml-3.8-20120326.jar poi-ooxml-schemas-3.8-20120326.jar xmlbeans-2.3.0.jar dom4j-1.6.1.jar
概述:Java poi导入导出EXCEL工具类(兼容各版本) 一、功能说明 允许同时导入或导出多个sheet,同一sheet可同时存在多个数据块,按数据块划分处理数据。 二、配置文件示例及详细说明 1、导入xml配置示例如下(见...
文件是解析excel的poi-3.8版本的相关文件。兼容2003和2007版。