本文参考:
http://wenku.baidu.com/view/707f07d95022aaea998f0fd1.html
http://feitian0127.iteye.com/blog/1152524
感谢两位。
使用的包:
代码如下:
import java.util.ArrayList;
import java.io.FileInputStream;
import java.io.IOException;
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;
public class ReadExcel {
public ArrayList<ArrayList<String>> readExcel(String fileName,String path) {
ArrayList<ArrayList<String>> Row =new ArrayList<ArrayList<String>>();
try {
Workbook workBook = null;
try {
workBook = new XSSFWorkbook(path+"\\"+fileName);
} catch (Exception ex) {
workBook = new HSSFWorkbook(new FileInputStream(path+"\\"+fileName));
}
for (int numSheet = 0; numSheet < workBook.getNumberOfSheets(); numSheet++) {
Sheet sheet = workBook.getSheetAt(numSheet);
if (sheet == null) {
continue;
}
// 循环行Row
for (int rowNum = 1; rowNum <= sheet.getLastRowNum(); rowNum++) {
Row row = sheet.getRow(rowNum);
if (row == null) {
continue;
}
// 循环列Cell
ArrayList<String> arrCell =new ArrayList<String>();
for (int cellNum = 0; cellNum <= row.getLastCellNum(); cellNum++) {
Cell cell = row.getCell(cellNum);
if (cell == null) {
continue;
}
arrCell.add(getValue(cell));
}
Row.add(arrCell);
}
}
} catch (IOException e) {
System.out.println("e:"+e);
}
return Row;
}
private String getValue(Cell cell) {
if (cell.getCellType() == cell.CELL_TYPE_BOOLEAN) {
return String.valueOf(cell.getBooleanCellValue());
} else if (cell.getCellType() == cell.CELL_TYPE_NUMERIC) {
return String.valueOf(cell.getNumericCellValue());
} else {
return String.valueOf(cell.getStringCellValue());
}
}
public static void main(String[] args) {
ReadExcel s= new ReadExcel();
//ArrayList<ArrayList<String>> row=s.readExcel("TEST.xlsx","D:\\Program Files\\Java");
ArrayList<ArrayList<String>> row=s.readExcel("TEST1.xls","D:\\Program Files\\Java");
System.out.println("size:"+row.size());
for (ArrayList<String> cell : row) {
for (String str : cell) {
System.out.println(str);
}
}
}
}
- 大小: 19.3 KB
分享到:
相关推荐
Java使用Apache POI库解析Excel 2003(.xls)和2007(.xlsx)文件是一项常见的任务,特别是在数据导入、数据分析或自动化处理场景中。Apache POI是一个开源项目,提供了读写Microsoft Office格式文件的能力,包括...
总的来说,Java解析Excel文件涉及的关键点包括选择合适的API(HSSF或XSSF)、理解文件格式以及利用库提供的功能进行数据操作。在实际项目中,根据文件大小、性能需求和功能复杂性,选择最佳的处理策略至关重要。
在这个案例中,提供的`(Excel2003和2007操作类包)poi-3.8.zip`是POI的一个旧版本,可能不包含对.xlsx文件的完全支持。推荐使用较新版本,例如4.x系列,以确保兼容性和性能。 2. **读取Excel文件**: 使用...
java读取excel文件内容,可读取2003和2007版本
总结来说,这个Eclipse工程展示了如何使用Java和Apache POI库解析Excel文件,并针对单元格的数据类型进行判断,这对于处理大量结构化数据的应用场景非常实用。通过学习和理解这个项目,开发者可以掌握处理Excel数据...
Java解析Excel 2007源码主要涉及的是对Microsoft Office Open XML (OOXML) 格式的处理,这种格式主要用于xlsx文件。OOXML是Excel 2007及更高版本默认使用的存储格式,它以XML为基础,将数据以更结构化的方式存储在多...
1、java解析读取excel文件中的数据,并写入数据库。 2、java读取数据库数据,并导出为excel文件。 3、README.md中有详细的操作步骤示例。 使用说明: 1. 先使用postman导入:other/excel相关.postman_collection....
Java解析2003版Excel和2007版Excel是一项常见的任务,特别是在处理大量数据导入、导出或分析时。在Java中,Apache POI库是用于读写Microsoft Office格式文件,包括Excel的主要工具。下面我们将深入探讨如何使用...
总结来说,Java解析Excel数据的关键在于选择正确的库和API,以及理解不同版本Excel文件的格式差异。通过Apache POI或其他类似库,我们可以轻松地在Java中实现对Excel文件的读取,从而实现数据的提取和处理,无论文件...
Java解析Excel表格是一种常见的任务,尤其在数据处理和分析领域。Java提供了多种库来支持Excel文件的读取和写入,比如Apache POI、JExcelAPI、OpenCSV等。这里我们将重点讨论Apache POI,这是一个广泛使用的开源库,...
java解析Excel
1. **Java解析Excel库** 在Java中,有多个库可以用来解析Excel文件,如Apache POI、JExcelAPI、SimpleExcel等。Apache POI是目前最广泛使用的库,支持`.xls`和`.xlsx`格式,功能强大且稳定。我们将主要讨论使用...
在Java开发中,上传并解析Excel文件是一种常见的需求,特别是在数据处理、报表导入或系统集成等场景。本篇文章将深入探讨如何实现这个功能,主要涉及的技术包括文件上传、Excel解析以及数据库操作。 首先,我们需要...
本文将深入探讨如何利用Java和Apache POI来高效地解析百万行的Excel数据。 首先,理解Excel文件的结构至关重要。Excel 2007及以上版本(.xlsx格式)使用了基于OpenXML标准的ZIP文件结构,这使得文件可以被分割成多...
JAVA解析Excel工具EasyExcel Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存&#xff0c;poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题&#xff0c;但...
回答csdn论坛:Java语言下excel导入到mysql数据库表...
Java使用poi的jar包解析excel,里面有个ExcelUtil工具类, 非常实用,里面有main函数可以测试,导入到eclipse里面就可以运行, 有测试excel文件,需要的jar都在里面, 导入就可以运行.
总之,Java通过Apache POI库可以有效地解析Excel 2003和2007文件,这在数据处理和分析中是非常实用的工具。在使用过程中,理解各个库的作用以及合理运用API,能够帮助我们编写出高效、可靠的代码。
本篇文章将深入讲解如何使用Java解析Excel(包括Excel 2003和2007格式)和CSV文件,并将解析的数据映射到Java Bean,以便后续的数据处理和存储。 首先,我们需要了解如何在Java中处理文件上传。在Servlet环境中,...