- 在Java中一个文件可以被两种方法读取,字节流或字符流。字符流通常处理文本数据,字节流用于处理二进制数据,如:音频,视频等
- 在字符流字符输入和输出流分别对应Reader和Writer,一个是读文件一个是写文件。
- 对文件操作的实现类是FileReader,用该对象即可实现文件的读取。FileWriter是文件写入实现类。
@RequestMapping(value = "/readCSV")
public void readCSV(MultipartFile multipartFile) {
List<String>list = new ArrayList<>();
File file = null;
try {
file = multipartFileToFile(multipartFile);
} catch (IOException e) {
throw new RuntimeException(e);
}
BufferedReader bufferedReader = null;
try {
String line = null;
bufferedReader = new BufferedReader(new FileReader(file));
while ((line = bufferedReader.readLine()) != null){
System.out.println(line);
list.add(line);
}
}catch (Exception e){
e.printStackTrace();
}finally {
if (null != bufferedReader){
try {
//这里只需要关闭bufferedReader即可,fileReader会自动关闭
bufferedReader.close();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
//删除临时文件
if (file.exists()){
file.delete();
}