我想讀一個文本文件,並解析字符串,直到eof..here是一個代碼段時,遇到了一個空指針exeception .. programs.txt是資產目錄下用掃描儀讀取文件
public void insert_programs() throws FileNotFoundException {
BufferedReader bfr = null;
try {
bfr = new BufferedReader(new
InputStreamReader(getAssets().open("programs.txt"))); // <-- NPE occurs on that line
} catch (IOException e) {
e.printStackTrace();
}
Scanner pgm = new Scanner(bfr);
pgm.useDelimiter("*{3}");
while (pgm.hasNext()) {
String str = pgm.next();
process(str);
}
}
日誌
03-14 18:05:34.936: E/AndroidRuntime(467): at dalvik.system.NativeStart.main(Native Method)
03-14 18:05:34.936: E/AndroidRuntime(467): Caused by: java.lang.NullPointerException
03-14 18:05:34.936: E/AndroidRuntime(467): at android.content.ContextWrapper.getAssets(ContextWrapper.java:74)
03-14 18:05:34.936: E/AndroidRuntime(467): at c.theworld.com.nikhil.Database.insert_programs(Database.java:40)
您是否願意將您的代碼放在發生NPE的地方? (像'// < - NPE發生在該行上的註釋) – 2012-03-14 12:43:09
你能提供你看到的輸出嗎? – csturtz 2012-03-14 12:43:31
你的問題到底是什麼? – csturtz 2012-03-14 12:46:57