我需要使用以下方法load
.txt file
数据:
public void getTextFromFile()
{
File path = getExternalFilesDir(null);
File file = new File(path, "alarmString.txt");
int length = (int) file.length();
byte[] bytes = new byte[length];
FileInputStream in = null;
try {
in = new FileInputStream(file);
in.read(bytes);
in.close();
} catch (IOException e) {
e.printStackTrace();
}finally {
String contents = new String(bytes);
TextView clockTxt = (TextView) findViewById(R.id.clockText);
assert clockTxt != null;
clockTxt.setText(contents);
}
}
调用方法getTextfromFile();
时,onCreate();
程序崩溃,并给出以下错误:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference
我试过:
检查id
是否正确。
确保layout
setContentView(R.id.activity_main);
确保在getTextFromFile();
;
setContentView()
醇>
谢谢!
答案 0 :(得分:1)
以某种方式,您的TextView未实例化。 要断言它你仍然可以做类似的事情:
if(clockTxt == null)
Log.d("TextView checking", "textview not found in layout");
要么没有包含正确的布局,要么TextView的ID错误。虽然断言在这里不起作用。