我的班级中有一个多部分文件作为ByteStream,我希望对其进行计数。

上传的文件可以是文本/ CSV格式,记录如下:

number1,note1
number1,note2
number3,note3
...


我的主要要求是,我不会将此文件存储在任何地方。

因此,我不能使用FileReaderBufferedReader

有没有一种方法可以直接计算此ByteStream的行?

最佳答案

以下经过测试,可以正常工作:

@PostMapping(consumes=MediaType.MULTIPART_FORM_DATA_VALUE)
public void fileUpload (@RequestParam MultipartFile file){

        ByteArrayInputStream bis=new  ByteArrayInputStream(file.getBytes());

        try(BufferedReader br=new BufferedReader(new InputStreamReader(bis))){
        long count = br.lines().count();
        System.out.println(">>> total lines : "+count);
  }

}

关于java - 文件的直接行数(ByteStream)-JAVA,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50985528/

10-11 22:21
查看更多