我的班级中有一个多部分文件作为ByteStream,我希望对其进行计数。
上传的文件可以是文本/ CSV格式,记录如下:
number1,note1
number1,note2
number3,note3
...
我的主要要求是,我不会将此文件存储在任何地方。
因此,我不能使用
FileReader
或BufferedReader
。有没有一种方法可以直接计算此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/