excel2007同之前excel97-2003在存储数据量上有很大差别,可以使用apache下的poi来实现 poi版本3.6以上
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
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;
public class ReadExcel {
private static XSSFWorkbook getXSSFWorkbook() {
String filePath = "D:\\new.xlsx";
XSSFWorkbook wordbook =null;
try { // 文件流指向excel文件
FileInputStream fin = new FileInputStream(filePath);
wordbook = new XSSFWorkbook(fin);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
// 调用解析XSSFWordbook类的方法,解析并封装该文件
return wordbook;
}
public static ArrayList<String[]> readXSSFAllRows() {
XSSFWorkbook wordbook =getXSSFWorkbook();
ArrayList<String[]> rowList = new ArrayList<String[]>();
try {
XSSFSheet sheet = null;
XSSFRow row = null;
XSSFCell cell = null;
sheet = wordbook.getSheetAt(0);
int rowNum = 0;
for (Iterator<?> rows = sheet.iterator(); rows.hasNext(); rowNum++) {
row = (XSSFRow) rows.next();
int col = 0;
int lastCellNum = (int) row.getLastCellNum();
String[] aCells = new String[lastCellNum];
while (col < lastCellNum) {
try {
cell = row.getCell(col);
aCells[col] = row.getCell(col).toString();;
} catch (Exception ex) {
ex.printStackTrace();
}
col++;
}
boolean notBlankLine = false;
for (int k = 0; k < aCells.length; k++) {
if (aCells[k] != null && aCells[k].length() > 0) {
notBlankLine = true;
break;
}
}
if (notBlankLine) {
System.out.print(aCells[0]);
System.out.print(aCells[1]);
System.out.println(aCells[2]);
// System.out.println("*******************************************");
rowList.add(aCells);
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
return rowList;
}
/**
* @param args
*/
public static void main(String[] args) {
ReadExcel.readXSSFAllRows();
}
}
分享到:
相关推荐
之前用jxl发现不支持excel2007,不得以就去用poi实现excel的读取了!本人亲测的一个实例,支持excel2007!
Java用poi读取excel文件Java用poi读取excel文件Java用poi读取excel文件
使用poi解析excel文件,并将数据写入到数据库 项目说明 这个项目实现的功能是读取excel文件中的数据,解析并写入数据库。 读取的excel文件位于项目目录下的 excel\0805.xlsx 使用IntelliJ IDEA开发此项目 使用MYSQL...
POI 读取Excel文件 POI 读取Excel文件
NULL 博文链接:https://tntxia.iteye.com/blog/2017108
实现了JAVA 窗口,读取EXCEL文件,用poi读取EXCEL内容只是一个小例子
NULL 博文链接:https://hongqishi.iteye.com/blog/910426
利用poi导出excel2007的时候出现内存溢出,当数据量过大,这种情况就更不容易控制了,这个文档就是解决这类问题,我就是用的这个,数据二十万都没溢出过,希望对大家有帮助。
本案例中利用Apache Poi读取Excel用法,源码注释详细基本用法!
最新版poi 相关6个jar包 for java。Java读取Excel表格数据时(.xls、.xlsx 格式),需要引用的jar包 亲测as上可以读取到2010excel内容,内附读取源码
阐述如何用POI来读取/写入完整的Excel文件。
本资源是从之前的资源综合整理出来的代码,之前的代码不全,需要下载两次,为了...本资源解决的难题是导入大文件excel的时候,会报内存溢出的错误。 欢迎各位下载,解决用户的难题是我的宗旨,好的话给个评价,谢谢!
POI读取Excel
POI处理Excel大文件的问题和解决方法 来自 http://itindex.net/detail/52291-poi-excel-%E6%96%87%E4%BB%B6
将excel文件中的内容通过java文件读取出来,包括总行数,列数,单元格内容,合并单元格,行高,列宽,图片等信息。
Java通过POI读取Excel遍历数据,根本word模板批量生成word文档,demo可运行,可根据需求修改
基于新版本的POI编写的读取Excel文件数据的工具类,可根据绝对路径、File对象、InputSteam对象读取解析Excel文件内容,并返回List<List<String>>格式结果,其中包含对单元格公式的处理。