Java JDK8 读取 CSV 文件并转换为对象

本文将演示如何使用 Java JDK8 读取 CSV 文件内容,并将其转换为对象。

代码示例

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class CSVReader {

    public static void main(String[] args) {
        String csvFile = "path/to/your/csv/file.csv";
        String line;
        String csvSplitBy = ",";

        List<MyObject> objects = new ArrayList<>();

        try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) {
            while ((line = br.readLine()) != null) {
                String[] data = line.split(csvSplitBy);

                // 创建一个新的 MyObject 实例并设置其属性
                MyObject obj = new MyObject();
                obj.setProp1(data[0]);
                obj.setProp2(data[1]);
                // 根据需要设置其他属性

                objects.add(obj);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

        // 对对象列表进行操作
        for (MyObject obj : objects) {
            System.out.println(obj);
        }
    }
}

class MyObject {
    private String prop1;
    private String prop2;
    // 根据需要添加其他属性

    public String getProp1() {
        return prop1;
    }

    public void setProp1(String prop1) {
        this.prop1 = prop1;
    }

    public String getProp2() {
        return prop2;
    }

    public void setProp2(String prop2) {
        this.prop2 = prop2;
    }

    // 根据需要添加其他属性的 getter 和 setter

    @Override
    public String toString() {
        return "MyObject{" +
                "prop1='" + prop1 + "'"
                + ", prop2='" + prop2 + "'"
                + "}";
    }
}

代码解释

  1. 读取 CSV 文件: 使用 BufferedReaderFileReader 打开 CSV 文件,并逐行读取数据。
  2. 分割数据: 使用 String.split() 方法根据逗号 (,) 分割每一行数据,生成一个字符串数组 data
  3. 创建对象: 创建一个 MyObject 实例,并将分割后的数据分别设置到对象的属性中。
  4. 添加对象到列表: 将创建好的对象添加到 objects 列表中。
  5. 处理对象列表: 可以使用循环遍历 objects 列表,对每个对象进行操作。

注意事项

  • 请将 "path/to/your/csv/file.csv" 替换为你的实际 CSV 文件路径。
  • 你可以根据需要在 MyObject 类中添加其他属性,并相应地设置和获取它们。
  • 如果 CSV 文件中包含其他分隔符,请在 csvSplitBy 变量中设置相应的分隔符。

总结

通过以上代码示例,你可以轻松地将 CSV 文件的内容读取并转换为对象,方便后续处理。


原文地址: https://www.cveoy.top/t/topic/b2Ag 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录