Ich möchte CSV-Datei lesen. Das Problem ist, wenn ich einen Wert von 0 oder irgendeinen anderen Index drucke, das unangenehme Ergebnis, das gezeigt wird, wie Sie auf Schnappschuss sehen können. Snapshot angehängt Problem beim Lesen der CSV-Datei
lesen Wert aus diesem Code:
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 Klasse:
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;
}
}