我正在开发一个简单的安卓应用程序,需要在内部存储设备中写入文本文件。我知道有许多关于这个问题的问题(和答案),但我真的不明白我做错了什么。
这是我在活动中使用的代码片段,以便写入文件:
public void writeAFile(){
String fileName = "myFile.txt";
String textToWrite = "This is some text!";
FileOutputStream outputStream;
try {
outputStream = openFileOutput(fileName , Context.MODE_PRIVATE);
outputStream.write(textToWrite.getBytes());
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
我真的不明白我犯了哪个错误。此外,我已经尝试在Android Studio模拟器和手机上运行这个项目,以便了解我做错了什么,但即使使用那个项目,也没有文件被写入到手机或模拟器中。
编辑: 我知道我的内部存储器中没有写入任何文件,因为我使用以下代码尝试读取文件内容(在我写入文件之后):
public void ReadBtn(View v) {
//reading text from file
try {
FileInputStream fileIn=openFileInput("myFile.txt");
InputStreamReader InputRead= new InputStreamReader(fileIn);
char[] inputBuffer= new char[READ_BLOCK_SIZE];
String s="";
int charRead;
while ((charRead=InputRead.read(inputBuffer))>0) {
String readstring=String.copyValueOf(inputBuffer,0,charRead);
s +=readstring;
}
InputRead.close();
textmsg.setText(s);
} catch (Exception e) {
e.printStackTrace();
}
}
完全没有显示任何内容。