我一直在思考这个相当多的时间.我正在尝试从
Yahoo!’s Stock API下载数据.当您使用API时,它会提供一个.csv文件.我一直在看opencsv,这似乎是完美的,除了我想避免
downloading and saving the file,如果可能的话.
根据examples,OpenCSV只能从FileReader读取.根据Oracle的docs on FileReader
,文件需要是本地的.
是否可以使用OpenCSV从远程文件读取而不下载?
解决方法
CSVReader根据
the documentation获取Reader参数,因此不限于该参数的FileReader.
要先使用CSVReader保存文件,可以在加载数据的流周围使用BufferedReader:
URL stockURL = new URL("http://example.com/stock.csv"); BufferedReader in = new BufferedReader(new InputStreamReader(stockURL.openStream())); CSVReader reader = new CSVReader(in); // use reader