2016-05-01 21 views
2

我想讀取CSV文件。問題是,當我打印一個值爲0或任何其他索引顯示尷尬的結果,你可以看到快照。附上快照。 Snapshot讀取CSV文件時發現令人尷尬的結果

從這個代碼

讀值:

InputStream inputStream = getResources().openRawResource(R.raw.stats); 
     FileReader csvFile = new FileReader(inputStream); 
     List<String[]> scoreList = csvFile.read(); 

     for(String[] scoreData:scoreList) { 
      Toast.makeText(this, scoreData[1], Toast.LENGTH_SHORT).show(); 
     } 

的FileReader類:

package com.example.zohaib.ultimatesmsblocker; 

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.InputStreamReader; 
import java.util.ArrayList; 
import java.util.List; 

public class FileReader { 
    InputStream inputStream; 

    public FileReader(InputStream inputStream){ 
     this.inputStream = inputStream; 
    } 
    public List<String[]> read(){ 
     List<String[]> resultList = new ArrayList(); 

     BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); 
     try { 
      String csvLine; 
      while ((csvLine = reader.readLine()) != null) { 
       String[] row = csvLine.split(","); 
       resultList.add(row); 
      } 
     } 
     catch (IOException ex) { 
      throw new RuntimeException("Error in reading CSV file: "+ex); 
     } 
     finally { 
      try { 
       inputStream.close(); 
      } 
      catch (IOException e) { 
       throw new RuntimeException("Error while closing input stream: "+e); 
      } 
     } 
     return resultList; 
    } 
} 

CSV文件: CSV

回答

2

你要加載的文件不是CSV,但是XLSX

並非每個Excel文件都是CSV文件。您需要使用Excel將其導出到CSV

Excel的.xlsx文件實際上是XML某些格式的文件打包在ZIP中。您看到的前兩個字母PK代表ZIP標題。