【发布时间】:2016-12-06 21:33:36
【问题描述】:
我正在使用 OpenCSV 读取存储在设备内部存储器 \G Shop\Input CSV\ 名为 product.csv 的 CSV 文件。该文件包含一些随机产品名称的单列。我想将每个产品存储到ArrayList,但我的代码不起作用。
代码如下:
String baseDirectory = android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
File readCsvFolder = new File(baseDirectory + File.separator + "G Shop" + File.separator + "Input CSV" + File.separator);
String readFileName;
String readFilePath;
List<String[]> readData;
void readCSV() {
readCsvFolder.mkdirs();
readFileName = "products.csv";
readFilePath = readCsvFolder.getPath() + File.separator + readFileName;
try {
ArrayList<String> searchProducts = new ArrayList<>();
readData = new ArrayList<String[]>();
CSVReader reader = new CSVReader(new FileReader(readFilePath));
readData = reader.readAll();
String[] row;
while ((row = reader.readNext()) != null) {
searchProducts.add(row[0]);
//This Toast never shows up!
Toast.makeText(mainActContext,"Saved : " + row[0],Toast.LENGTH_SHORT).show();
}
} catch (IOException e) {
e.printStackTrace();
}
}
我没有看到任何错误或警告,调用该方法后根本没有输出。我非常感谢任何形式的帮助或建议:)
【问题讨论】:
-
什么:readData = reader.readAll();所有数据都被它加载了吗?
-
@user3380739 是的,这就是导致问题的原因。删除该行后,代码运行完美。 BTW,抱歉回复晚了,最近有点忙,也非常感谢!
标签: java android csv arraylist opencsv