Java 8 从输入文件流式传输多个对象创建

我正在尝试读取一个文件来捕获要使用Java 8流传递给对象的参数。


文件格式为:


10 AA


15 BB


20 毫升


必须创建与行数相同的对象数,对象采用这些参数。


例如,对象 a = 新对象(10 , AA)。


该文件将始终最多包含 3 行。


我已经阅读了文件,检查它是否以数字开头,将其拆分为新行,并将每行放在字符串列表中[ ]。


     List<String[]> input = new ArrayList<>();


        try {


          input =  Files.lines(Paths.get("C:\\Users\\ubaid\\IntelliJ Workspace\\Bakery\\input.txt")).

                    filter(lines->Character.isDigit(lines.trim().charAt(0))).map(x-> x.split("\\r?\\n")).collect(Collectors.toList());

        } catch (IOException e) {

            e.printStackTrace();

        }


        for(String a[] : input){

            for(String s : a){

                System.out.println(s);


            }

        }


繁花如伊
浏览 123回答 1
1回答

Qyouu

假设您有:public class Type {&nbsp; private int number;&nbsp; private String text;&nbsp; // constructor and other methods}并且该文件格式正确:List<Type> objs = Files.lines(path)&nbsp; &nbsp; .map(s -> s.split(" "))&nbsp; &nbsp; .map(arr -> new Type(Integer.parseInt(arr[0]), arr[1]))&nbsp; &nbsp; .collect(Collectors.toList());System.out.println(objs);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java