poi读取csv文件java

发布时间:2023-11-19 17:25:29

Java代码示例从CSV文件中使用POI库读取数据

CSV(逗号分隔值)是存储和传输表格数据的常见文件格式。在Java中,我们可以使用Apache POI库读取CSV文件并提取数据。

1. 引入POI库的依赖性

首先,我们需要在项目中工作pom.xmlPOI库的依赖被添加到文件中。在这里,我们使用POI的最新版本(4.1.2):

<dependencies>    <dependency>        <groupId>org.apache.poi</groupId>        <artifactId>poi</artifactId>        <version>4.1.2</version>    </dependency>    <dependency>        <groupId>org.apache.poi</groupId>        <artifactId>poi-ooxml</artifactId>        <version>4.1.2</version>    </dependency></dependencies>
2. 创建CSV文件读取器

我们可以创建一个CSVReader类,用于读取CSV文件并提取其数据:

import org.apache.poi.ss.usermodel.*;import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.*;import java.util.ArrayList;import java.util.List;public class CSVReader {    private String filename;    public CSVReader(String filename) {        this.filename = filename;    }    public List<List<String>> read() throws IOException {        List<List<String>> data = new ArrayList<>();        FileInputStream fis = new FileInputStream(filename);        Workbook workbook = new XSSFWorkbook(fis);        Sheet sheet = workbook.getSheetAt(0);        for (Row row : sheet) {            List<String> rowData = new ArrayList<>();            for (Cell cell : row) {                rowData.add(cell.getStringCellValue());            }            data.add(rowData);        }        workbook.close();        fis.close();        return data;    }}

我们使用上述代码XSSFWorkbook类别读取XLSX格式的Excel文件。如果要读取XLS格式的文件,可以使用HSSFWorkbook类。

3. 读取CSV文件,提取数据

现在,我们可以用了CSVReader类读取CSV文件并提取其数据:

import java.io.IOException;import java.util.List;public class Main {    public static void main(String[] args) {        String filename = "data.csv";        CSVReader csvReader = new CSVReader(filename);        try {            List<List<String>> data = csvReader.read();            for (List<String> rowData : data) {                for (String cellData : rowData) {                    System.out.print(cellData + " ");                }                System.out.println();            }        } catch (IOException e) {            e.printStackTrace();        }    }}

在上述代码中,我们首先创建了一个代码CSVReader对象,然后调用它read该方法读取CSV文件并返回数据。最后,我们将数据遍历并打印到控制台。

4. 饼状图示例

以下是用mermaid语法绘制饼状图的示例:

```mermaidpie    "Apples" : 45    "Oranges" : 20    "Bananas" : 35
上面的代码会生成一个饼状图,显示苹果、橙子和香蕉的比例。### 5. 以下是一个用mermaid语法绘制甘特图的示例:```markdown```mermaidgantt    dateFormat  YYYY-MM-DD    title My Awesome Gantt Chart    section Project    Task 1           :a1, 2022-01-01, 30d    Task 2           :after a1  , 20d    Task 3           :after a2  , 10d    Task 4           :after a3  , 40d
上述代码将生成一个甘特图,显示多个任务的开始和结束日期。### 本文介绍了如何使用POI库从CSV文件中读取数据的Java代码示例。创建一个CSV文件读取器并调用它`read`方法,我们可以很容易地读取CSV文件并提取数据。同时,我们还讨论了如何用mermaid语法绘制饼状图和甘特图来可视化数据。希望本文能帮助您理解如何使用POI库阅读CSV文件,并为您的数据处理任务提供一些启示!

上一篇 pem私钥文件 Java解析
下一篇 返回列表

文章素材均来源于网络,如有侵权,请联系管理员删除。

标签: Java教程Java基础Java编程技巧面试题Java面试题