Java 在ANDROID中将内部文件内容写入LISTVIEW
我需要从存储在内存中的文件中读取内容,然后将这些内容写入ListView。我的代码如下:Java 在ANDROID中将内部文件内容写入LISTVIEW,java,android,file-io,Java,Android,File Io,我需要从存储在内存中的文件中读取内容,然后将这些内容写入ListView。我的代码如下: StringBuilder sb = new StringBuilder(); FileInputStream fis = null; try{ BufferedReader reader = new BufferedReader(new InputStreamReader(fis, "UTF-8")); String line = null; whi
StringBuilder sb = new StringBuilder();
FileInputStream fis = null;
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(fis, "UTF-8"));
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line).append("\n");
}
fis.close();
} catch(OutOfMemoryError om){
om.printStackTrace();
} catch(Exception ex){
ex.printStackTrace();
}
@SuppressWarnings("unused")
String result = sb.toString();
ListView myListView = (ListView) findViewById(R.id.scores_display);
String[] strings = new String[]{"Test1","Test2"};
ArrayAdapter<String> myArrayAdapter= new ArrayAdapter<String>(this, R.id.scores_display,strings);
myListView.setAdapter(myArrayAdapter);
我无法理解logcat的报告。请帮我解释一下错误。我在代码中看到的唯一明显错误是,您将FileInputStream指定为null,然后引用它,而无需进一步初始化 以下是您的问题行:
FileInputStream fis = null; // initialized as null
// ... and then, in your try statement ...
BufferedReader reader = new BufferedReader(new InputStreamReader(fis, "UTF-8")); // "fis" referenced but still null
必须使用文件对象、FileDescriptor对象或表示文件名的字符串初始化
例如:
FileInputStream fis = new FileInputStream(new File("myFile.txt"));
您可能还想了解一下在Android中访问文件的方式
FileInputStream fis = new FileInputStream(new File("myFile.txt"));