我想閱讀資產文件夾下的文件,然後我想從我的文件中獲取文本作爲Main_Activity類中的返回值。這是我的代碼。如何在沒有擴展Activity類的情況下從java類的assets文件夾中讀取文件?
Main.java
這是在主類中的方法。
ReadFile.java
這fileReaing()方法是在ReadFile.java。
public String fileReading() throws IOException {
StringBuilder sb = new StringBuilder();
AssetManager am = getAssets();
InputStream is = am.open("a.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line = null;
while ((line = br.readLine()) != null) {
sb.append(line + "\n");
}
return sb.toString();
}
}
運行此代碼後,我發現以下錯誤。
Process: com.csh.readfile, PID: 4379
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.csh.readfile/com.csh.readfile.Main}: java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.AssetManager android.content.
Context.getAssets()' on a null object reference
請幫我解決這個錯誤。我只是Android的初學者,並非常感謝所有人。
你初始化 「this」 關鍵字的OnCreate背景??? –
@SnehalGongle,不,先生,我想讀另一個java calss文件,然後我想從文件中獲取文本作爲返回值。我應該怎麼做。 –
你可以參考@omar休息的答案,我會建議你使用getApplicationContext()而不是上下文 –