我有一个问题,创建一个保存文件。当我试图将字符串保存到android时,它会导致字符串没有完全保存或根本没有保存。文件需要被创建,因为它不存在于所需的文件路径,所以这是另一个问题,我认为可以很容易地通过创建这个方法来解决。我很感激你的帮助。当前的方法需要填写,但我不知道如何去做,使文件准备好直接读取。
public File saveFile(String contents, String file) {
return null;
}
要创建路径,可以使用以下代码:
File dir = new File(Environment.getExternalStorageDirectory() + "/Folder/");
if (!dir.exists()) {
if(dir.mkdirs()) {
Log.d(TAG, "Path to " + dir.getAbsolutePath() + " sucessfully created");
} else {
Log.e(TAG, "Path to " + dir.getAbsolutePath() + " could not be created!");
}
}
和存储实际内容可以这样做:
File outFile = new File(Environment
.getExternalStorageDirectory()
.getAbsolutePath()
+ "/Folder/", file);
BufferedOutputStream mBOS = new BufferedOutputStream(new FileOutputStream(accelValFile));
try {
mBOS.write(contents.getBytes("utf-8"));
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
,不要忘记在Manifest中加入以下内容:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
但是我不明白为什么这个方法应该返回一个文件…