我想讀取一個CSV文件,並讓它顯示內容作爲Android應用程序的基本列表。我正在使用Kopfgeldjaeger in this thread給出的方法。發送字符串到烤麪包
我已經加入了幾個「祝酒詞」,這要麼顯示「成功」或「失敗」在Android的屏幕底部如果代碼管理(或沒有管理)的加載CSV文件正確。見下:
try {
CSVReader reader = new CSVReader(new InputStreamReader(getAssets().open("file.csv")));
for(;;) {
next = reader.readNext();
if(next != null) {
list.add(next);
} else {
break;
}
}
Toast.makeText(getApplicationContext(), "SUCCESS",
Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
Toast.makeText(getApplicationContext(), "FAIL",
Toast.LENGTH_SHORT).show();
}
當我加載的應用程序,我得到'成功'的消息,所以一切都很好。現在,我想看看我是否可以加載任何數據。在Kopfgeldjaeger的答案,建議我可以用下面的代碼訪問的字符串:
list.get(1)[1]
因此,以檢查它的工作,我嘗試生成另一個敬酒,如下:
Toast.makeText(getApplicationContext(), list.get(1)[1],
Toast.LENGTH_SHORT).show();
添加的烤麪包會導致程序無法正常加載。問題是,我得到吐司語法錯誤,還是我的CSV文件加載不正確?
您是否嘗試過了'list.get改變(1)[1]''到列表。得到(0)[0]'? – Wroclai
嘗試進入調試模式並逐行調試代碼。這樣你會知道列表是否仍然爲空或實際填充。 – Avinash
在for循環中嘗試每個列表項的sys.out()。此外,循環完成後檢查,有多少列表項(list.size())。另外,嘗試在這裏放一些logcat消息來查找是否拋出ArrayIndexOutOfBounds異常或其他東西? – rahul