我只是学习Android的初学者。我想学习如何将一段文字写入Android中的文件。
我点击按钮时编写的代码如下所示:
write.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
FileOutputStream fos;
try {
fos = openFileOutput("filename", Context.MODE_PRIVATE);
fos.write(data.getBytes());
fos.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
tv.setText("Values saved");
}
});
执行此操作时,会在logcat中抛出FileNotFoundException
。据我所知,如果不存在具有此类名称的文件,将创建一个新文件。
logcat消息是:
> 05-14 08:37:55.085: W/System.err(281): java.io.FileNotFoundException: /data/data/com.example.myproject11/files/test (No such file or directory)
答案 0 :(得分:0)
首先我们应该检查,文件是否存在。你最好试试:
File fileDir = new File("filepath");
if (!fileDir.exists())
fileDir.mkdirs();
try {
File file = new File(fileDir, "filename");
FileOutputStream outputStream = new FileOutputStream(file);
outputStream.write(data.getBytes());
outputStream.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
tv.setText("Values saved");