首页 > 代码库 > poi读取xlsx
poi读取xlsx
知道 大家都知道用poi读取xls 当时有时候 必须要读取xlsx 现在我把我做测试的demo分享给大家
package com.lt.main; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.sql.Connection; import java.sql.PreparedStatement; import java.util.ArrayList; import java.util.List; 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; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import com.lt.util.DBUtil; import com.lt.util.Oracle; public class ReadMain { public static void readFile(File file){ Connection con = null; PreparedStatement ps = null; String sql = "insert into t_xls(mobile) values(?)"; int count = 0; try { con = DBUtil.getConnection(); ps = con.prepareStatement(sql); InputStream is = new FileInputStream(file); XSSFWorkbook wb = new XSSFWorkbook(is); XSSFCell cell = null; for (int sheetIndex = 0; sheetIndex < wb.getNumberOfSheets(); sheetIndex++) { XSSFSheet st = wb.getSheetAt(sheetIndex); for (int rowIndex = 0; rowIndex <= st.getLastRowNum(); rowIndex++) { XSSFRow row = st.getRow(rowIndex); cell = row.getCell(0); cell.setCellType(XSSFCell.CELL_TYPE_STRING); count++; ps.setString(1, cell.getStringCellValue()); ps.addBatch(); if(count % 10000 == 0){ ps.executeBatch(); } } } ps.executeBatch(); }catch (Exception e) { e.printStackTrace(); }finally{ DBUtil.close(ps); DBUtil.close(con); } } public static void main(String[] args) { DBUtil.startProxool(); readFile(new File("C:\\Documents and Settings\\Administrator\\桌面\\22.xlsx")); } }
里面会涉及把内容写入到数据库的
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。