📜  CSV 到 2D 数组 javaescript - Java (1)

📅  最后修改于: 2023-12-03 15:00:10.253000             🧑  作者: Mango

CSV 到 2D 数组 javascript - Java

本文介绍如何使用Java代码将CSV数据转换为2D数组。

CSV 数据

CSV(Comma Separated Values)是一种常见的文件格式,它使用逗号分隔字段并以行为分隔符。CSV文件可以用于存储表格数据,如电子表格或数据库查询结果。

例如,以下是一个包含姓名、年龄和性别的CSV文件:

Name,Age,Gender
John,28,Male
Emily,22,Female
Mike,35,Male
读取 CSV 数据

Java中有几种方法可以读取CSV数据,但我们将使用第三方库opencsv

首先,需要将以下依赖项添加到Maven pom.xml文件中:

<dependency>
    <groupId>com.opencsv</groupId>
    <artifactId>opencsv</artifactId>
    <version>5.5.2</version>
</dependency>

使用opencsv读取CSV文件需要以下步骤:

  1. 引入CSVReader类。
  2. 打开CSV文件并创建CSVReader对象。
  3. 读取CSV文件中的所有行,并将每一行拆分成一个字符串数组。
  4. 将每一行的数组添加到2D数组中。

以下是完整的Java代码:

import java.io.FileReader;
import java.io.IOException;
import com.opencsv.CSVReader;

public class CsvTo2dArray {

    public static void main(String[] args) {

        String filePath = "path/to/csv/file.csv";

        try (CSVReader reader = new CSVReader(new FileReader(filePath))) {

            String[] line;
            String[][] data = new String[0][];

            while ((line = reader.readNext()) != null) {
                String[][] newData = new String[data.length + 1][];
                System.arraycopy(data, 0, newData, 0, data.length);
                newData[data.length] = line;
                data = newData;
            }

            System.out.println(data);

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
结论

这些代码将读取CSV文件并将其转换为2D字符串数组。这种方法需要额外的内存来存储所有数据,因此,可以在读取CSV文件时选择其他方法。

参考文献