jas*_*son 22 android streamwriter
我想写一些文件.我找到了这段代码:
private void writeToFile(String data) {
try {
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(context.openFileOutput("config.txt", Context.MODE_PRIVATE));
outputStreamWriter.write(data);
outputStreamWriter.close();
}
catch (IOException e) {
Log.e("Exception", "File write failed: " + e.toString());
}
}
Run Code Online (Sandbox Code Playgroud)
代码似乎非常合乎逻辑,但我在手机中找不到config.txt文件.
如何检索包含字符串的文件?
Fan*_*mas 40
如果没有指定路径,您的文件将保存在您的应用空间中(/data/data/your.app.name/
).
因此,您最好将文件保存到外部存储器(不一定是SD卡,它可以是默认存储器).
您可能希望通过阅读官方文档来深入研究这一主题
在综合中:
将此权限添加到您的清单中:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Run Code Online (Sandbox Code Playgroud)
它包含READ权限,因此无需另外指定.
将文件保存在您指定的位置(这取自我的活鳕鱼,所以我确定它有效):
public void writeToFile(String data)
{
// Get the directory for the user's public pictures directory.
final File path =
Environment.getExternalStoragePublicDirectory
(
//Environment.DIRECTORY_PICTURES
Environment.DIRECTORY_DCIM + "/YourFolder/"
);
// Make sure the path directory exists.
if(!path.exists())
{
// Make it, if it doesn't exit
path.mkdirs();
}
final File file = new File(path, "config.txt");
// Save your stream, don't forget to flush() it before closing it.
try
{
file.createNewFile();
FileOutputStream fOut = new FileOutputStream(file);
OutputStreamWriter myOutWriter = new OutputStreamWriter(fOut);
myOutWriter.append(data);
myOutWriter.close();
fOut.flush();
fOut.close();
}
catch (IOException e)
{
Log.e("Exception", "File write failed: " + e.toString());
}
}
Run Code Online (Sandbox Code Playgroud)
[编辑]确定尝试这样(不同的路径 - 外部存储上的文件夹):
String path =
Environment.getExternalStorageDirectory() + File.separator + "yourFolder";
// Create the folder.
File folder = new File(path);
folder.mkdirs();
// Create the file.
File file = new File(folder, "config.txt");
Run Code Online (Sandbox Code Playgroud)
小智 5
编写一个简化的文本文件:
private void writeToFile(String content) {
try {
File file = new File(Environment.getExternalStorageDirectory() + "/test.txt");
if (!file.exists()) {
file.createNewFile();
}
FileWriter writer = new FileWriter(file);
writer.append(content);
writer.flush();
writer.close();
} catch (IOException e) {
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
50606 次 |
最近记录: |