为了账号安全,请及时绑定邮箱和手机立即绑定

如何将CSV中的数据存储到Java的数组中?

如何将CSV中的数据存储到Java的数组中?

慕斯709654 2022-09-14 17:39:06
我有以下.csv文件:B00987,58B00567,43B00343,59B00653,25B00757,31B00876,40B00421,62B00568,78B00826,79B00126,93B00862,62B00999,12B00237,68B00762,85B00864,49我需要将所有B00000号码存储在一个数组中供以后使用。该数组应如下所示:Position 0 | B00987Position 1 | B00567Position 2 | B00343Position 3 | B00653....Position 13 | B00762Position 14 | B00864文件路径为:String filepath = "src\\marks.csv";任何想法如何在java中做到这一点?谢谢
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

您可以将 Java 流与以下方法一起使用:Files.lines()


try (Stream<String> lines = Files.lines(Paths.get("marks.csv"))) {

    String[] result = lines

            .map(line -> line.split(","))

            .map(items -> items[0])

            .toArray(String[]::new);

} catch (IOException e) {

    e.printStackTrace();

}

这会将所有行读取到流中,将每行拆分并仅使用第一个元素。,


查看完整回答
反对 回复 2022-09-14
?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

您仅使用可预测的格式存储第一列,以便可以在每行中查找分隔符的第一个匹配项。假设是 JAR 中的一个资源:,marks.csv


try (BufferedReader reader = new BufferedReader(new InputStreamReader(

        getClass().getResourceAsStream("/marks.csv")))) {

  String[] numbers = reader.lines()

      .map(l -> l.substring(0, l.indexOf(',')))

      .toArray(String[]::new);

}


查看完整回答
反对 回复 2022-09-14
  • 2 回答
  • 0 关注
  • 131 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号