Java读取Excel数据:基于Apache POI(一)

版权声明:本文为Zhang Phil原创文章,请不要转载! https://blog.csdn.net/zhangphil/article/details/85302347

Java读取Excel数据:基于Apache POI(一)

Java本身不支持直接读取微软的Excel表格数据。第三方的Apache提供了一个库POI用以支持Java读写Excel表格数据。
首先需要到Apache官网下载POI的库,下载链接地址:https://poi.apache.org/download.html
本文基于POI的版本是4.0.1。下载poi-bin-4.0.1-20181203.zip解压后,得到下面文件:


把图中的jar文件导入到自己的项目中,就可以使用POI,用Java读Excel表格数据了。假设现在有有一个名为test.xls的Excel文件,test.xls的表数据内容是这样的:

写一个Java程序读出来:

import java.io.File;

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.ss.usermodel.WorkbookFactory;

public class ReadExcel {
	public static void main(String[] args) throws Exception {
		File xlsFile = new File("test.xls");

		// 工作表
		Workbook workbook = WorkbookFactory.create(xlsFile);

		// 表个数。
		int numberOfSheets = workbook.getNumberOfSheets();

		// 遍历表。
		for (int i = 0; i < numberOfSheets; i++) {
			Sheet sheet = workbook.getSheetAt(i);

			// 行数。
			int rowNumbers = sheet.getLastRowNum() + 1;

			// Excel第一行。
			Row temp = sheet.getRow(0);
			if (temp == null) {
				continue;
			}

			int cells = temp.getPhysicalNumberOfCells();

			// 读数据。
			for (int row = 0; row < rowNumbers; row++) {
				Row r = sheet.getRow(row);
				for (int col = 0; col < cells; col++) {
					System.out.print(r.getCell(col).toString()+" ");
				}

				// 换行。
				System.out.println();
			}
		}
	}

}


输出结果为:


 

猜你喜欢

转载自blog.csdn.net/zhangphil/article/details/85302347