Java轻松读取Excel,告别手动操作,这些必备jar包你不可不知!

在Java中处理Excel文件是一个常见的任务,特别是当涉及到数据分析和报表生成时。使用Java读取Excel文件可以大大提高工作效率,减少手动操作。下面,我们将介绍一些在Java中读取Excel文件时不可或缺的jar包。

1. Apache POI

Apache POI是Java中处理Microsoft Office格式文件的强大库,包括Excel(.xls和.xlsx)。它提供了丰富的API来操作Excel文件,包括读取、写入、修改等。

1.1 下载与安装

首先,您需要在项目中添加Apache POI的依赖。以下是Maven配置示例:

org.apache.poi

poi

5.2.2

org.apache.poi

poi-ooxml

5.2.2

1.2 读取Excel文件

以下是一个简单的示例,展示如何使用Apache POI读取一个Excel文件:

import org.apache.poi.ss.usermodel.*;

import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.File;

import java.io.FileInputStream;

import java.util.Iterator;

public class ExcelReader {

public static void main(String[] args) {

try {

FileInputStream file = new FileInputStream(new File("example.xlsx"));

Workbook workbook = new XSSFWorkbook(file);

Sheet sheet = workbook.getSheetAt(0);

Iterator rowIterator = sheet.iterator();

while (rowIterator.hasNext()) {

Row row = rowIterator.next();

Iterator cellIterator = row.cellIterator();

while (cellIterator.hasNext()) {

Cell cell = cellIterator.next();

switch (cell.getCellType()) {

case STRING:

System.out.print(cell.getStringCellValue() + "\t");

break;

case NUMERIC:

System.out.print(cell.getNumericCellValue() + "\t");

break;

case BOOLEAN:

System.out.print(cell.getBooleanCellValue() + "\t");

break;

case FORMULA:

System.out.print(cell.getCellFormula() + "\t");

break;

default:

System.out.print(" " + "\t");

}

}

System.out.println();

}

file.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}

2. Apache Commons CSV

Apache Commons CSV是一个用于读写CSV文件的Java库。如果您需要处理CSV格式的Excel文件,这个库非常有用。

2.1 下载与安装

在Maven中添加以下依赖:

org.apache.commons

commons-csv

1.8

2.2 读取CSV文件

以下是一个简单的示例,展示如何使用Apache Commons CSV读取一个CSV文件:

import org.apache.commons.csv.CSVFormat;

import org.apache.commons.csv.CSVParser;

import org.apache.commons.csv.CSVRecord;

import java.io.FileReader;

import java.io.IOException;

public class CsvReader {

public static void main(String[] args) {

try (CSVParser parser = new CSVParser(new FileReader("example.csv"), CSVFormat.DEFAULT.withHeader())) {

for (CSVRecord record : parser) {

System.out.println(record.get(0) + ", " + record.get(1) + ", " + record.get(2));

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

3. OpenCSV

OpenCSV是一个简单、灵活的Java CSV解析器/生成器库。它易于使用,且性能出色。

3.1 下载与安装

在Maven中添加以下依赖:

com.opencsv

opencsv

5.5.2

3.2 读取CSV文件

以下是一个简单的示例,展示如何使用OpenCSV读取一个CSV文件:

import com.opencsv.CSVReader;

import java.io.FileReader;

import java.io.IOException;

public class OpenCsvReader {

public static void main(String[] args) {

try (CSVReader reader = new CSVReader(new FileReader("example.csv"))) {

String[] nextLine;

while ((nextLine = reader.readNext()) != null) {

System.out.println(nextLine[0] + ", " + nextLine[1] + ", " + nextLine[2]);

}

} catch (IOException e) {

e.printStackTrace();

}

}

}

总结

在Java中处理Excel文件时,Apache POI、Apache Commons CSV和OpenCSV是三个非常实用的库。它们可以帮助您轻松读取、写入和修改Excel文件。选择合适的库取决于您的具体需求,但无论如何,这些库都能显著提高您的工作效率。