Java Can';t在内部存储器中创建文件
我试图在内部存储器中创建一个文件并对其进行修改 但是有一个未知的问题,我无法调试它 下面我复制了我的mainActivity类,它包含我为pupose编写的所有代码,但我真的无法调试它!!!我只是在文本视图中什么也看不到 公共类MyActivity扩展了活动{Java Can';t在内部存储器中创建文件,java,android,file,Java,Android,File,我试图在内部存储器中创建一个文件并对其进行修改 但是有一个未知的问题,我无法调试它 下面我复制了我的mainActivity类,它包含我为pupose编写的所有代码,但我真的无法调试它!!!我只是在文本视图中什么也看不到 公共类MyActivity扩展了活动{ final static String fileName = "myFile.txt"; File file; @Override public void onCreate(Bundle savedInstanceState) {
final static String fileName = "myFile.txt";
File file;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
initializeFile();
TextView tv = (TextView) findViewById(R.id.text_view);
try {
tv.setText(readFile());
} catch (IOException e) {
e.printStackTrace();
}
setContentView(R.layout.main);
}
public void initializeFile(){
try {
file = new File(getFilesDir() , fileName);
if(!file.exists()){
Log.d("BUG","No Files !!");
}
FileOutputStream out = openFileOutput(fileName , MODE_PRIVATE);
out.write("My text".getBytes());
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
public String readFile() throws IOException {
String s = "";
Scanner scan = new Scanner(file);
if (!file.exists())
{
Log.d("BUG","NO File(reading)");
}
while(scan.hasNext()){
s += scan.nextLine();
}
return s;
}
在您尝试获取TextView tv之前,您应该调用
setContentView(R.layout.main)
。其他地方有NPE,因为您的主视图没有膨胀,并且没有id为R.id.text\u的视图。其他一切正常。您从未调用过。close()这没什么大不了的,我已经用过原始代码了。然后你应该发布原始代码,我已经修复了,这是原始代码我真的不相信我的眼睛!!!我已经试了20多次了,但现在没问题!!!谢谢你。