首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将InputStream馈送到CSVReader?

如何将InputStream馈送到CSVReader?
EN

Stack Overflow用户
提问于 2014-09-15 21:14:47
回答 2查看 16.5K关注 0票数 3

我想把InputStream转换成CSVReader。当我使用下面的代码时

代码语言:javascript
复制
CSVReader reader = new CSVReader(new FileReader(ADDRESS_FILE));

它工作得很好,但是,如果我从类路径中获取文件,那么这个代码就不能工作。

如何将InputStream转换为CSVReader

这不起作用,因为InputStream不是字符串类型:

代码语言:javascript
复制
InputStream input = ImportCsv.class.getResourceAsStream("/dataUpload/staff.csv");
CSVReader reader = new CSVReader(new FileReader(input));
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-09-15 21:17:46

使用

代码语言:javascript
复制
CSVReader reader = new CSVReader(new InputStreamReader(input));

编辑以回答评论

问题是你没有任何你想要的FileReader的构造函数。详情请参见FileReader接口。但是,由于您必须将字节流转换为字符流,因此您必须使用InputStreamReader。为了获得更好的性能,您还可以使用BufferedReader对其进行包装

票数 8
EN

Stack Overflow用户

发布于 2014-09-15 21:18:48

代码语言:javascript
复制
CSVReader reader = new CSVReader(new InputStreamReader(input, "UTF-8"));

InputStreamReader是二进制字节/ InputStream和unicode文本(读取器/字符串)之间的桥梁。如果文件不在本地,则指定字节/ InputStream的编码。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25848991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档