解析CSV文件時出現問題。只有2行數據用逗號分隔。第一行是日期,第二行是一個值。日期字段將始終具有日期,但有時該值爲空(或空值?)。當它達到空值時,我得到一個StringIndexOutOfBoundsException並且應用程序崩潰。我記錄每個循環,並可以看到數據,但一旦我得到一個空值,它會停止循環並給出錯誤。如果沒有空值,那麼它完美。這裏是我的代碼:Android CSV解析器問題
BufferedReader buf = new BufferedReader(new StringReader(file));
String line = null;
while ((line = buf.readLine()) != null) {
try {
String date = null, value = null;
String[] RowData = line.split(",");
date = RowData[0];
value = RowData[1]; (this is the row it crashes on)
這是CSV的樣子:
2011-08-28 09:16,8.23
2011-08-28 09:15,8.24
2011-08-28 09:14,8.26
2011-08-28 09:13,8.34
2011-08-28 09:12,
2011-08-28 09:11,10.72
2011-08-28 9時10,
2011-08-28 09:09,
在9點13的值是我在得到錯誤之前在logcat中的最後一件事。
這個固定:
if(RowData.length == 2) {
date = RowData[0];
value = RowData[1];
} else {
date = RowData[0];
value = "0";
}
我在值字段所以後來的過程不會對空值嗆寫了一個0。感謝您的幫助!
我試過各種變化,它仍然崩潰。我試過的東西像if(RowData.length <2){value =「0」;} else {value = RowData [1];}像往常一樣,我可能錯過了一些簡單的哈哈。 – Opy
我不得不在日期之前放置if語句= RowData [0];謝謝! – Opy