我想把InputStream转换成CSVReader。当我使用下面的代码时
CSVReader reader = new CSVReader(new FileReader(ADDRESS_FILE));它工作得很好,但是,如果我从类路径中获取文件,那么这个代码就不能工作。
如何将InputStream转换为CSVReader
这不起作用,因为InputStream不是字符串类型:
InputStream input = ImportCsv.class.getResourceAsStream("/dataUpload/staff.csv");
CSVReader reader = new CSVReader(new FileReader(input));发布于 2014-09-15 21:17:46
使用
CSVReader reader = new CSVReader(new InputStreamReader(input));编辑以回答评论
问题是你没有任何你想要的FileReader的构造函数。详情请参见FileReader接口。但是,由于您必须将字节流转换为字符流,因此您必须使用InputStreamReader。为了获得更好的性能,您还可以使用BufferedReader对其进行包装
发布于 2014-09-15 21:18:48
CSVReader reader = new CSVReader(new InputStreamReader(input, "UTF-8"));InputStreamReader是二进制字节/ InputStream和unicode文本(读取器/字符串)之间的桥梁。如果文件不在本地,则指定字节/ InputStream的编码。
https://stackoverflow.com/questions/25848991
复制相似问题