use*_*731 2 java csv inputstream
我想转换InputStream成CSVReader.当我使用下面的代码时
CSVReader reader = new CSVReader(new FileReader(ADDRESS_FILE));
Run Code Online (Sandbox Code Playgroud)
它工作正常,但是,如果我从类路径中获取文件,那么此代码不起作用.
我如何将a转换InputStream为CSVReader?
这不起作用原因InputStream不是字符串类型:
InputStream input = ImportCsv.class.getResourceAsStream("/dataUpload/staff.csv");
CSVReader reader = new CSVReader(new FileReader(input));
Run Code Online (Sandbox Code Playgroud)
CSVReader reader = new CSVReader(new InputStreamReader(input, "UTF-8"));
Run Code Online (Sandbox Code Playgroud)
二进制字节/ InputStream和unicode文本(Reader/String)之间的桥接是InputStreamReader.如果文件不是本地文件,请指定bytes/InputStream的编码.
使用
CSVReader reader = new CSVReader(new InputStreamReader(input));
Run Code Online (Sandbox Code Playgroud)
问题是因为您没有所需的FileReader构造函数。有关详细信息,请参见FileReader API。但是由于必须将字节流转换为字符流,因此必须使用InputStreamReader。为了获得更好的性能,你可以用它包装BufferedReader也
| 归档时间: |
|
| 查看次数: |
10153 次 |
| 最近记录: |