Dev*_*ull 2 android android-file
我研究了下面的链接,但它没有回答我的问题. http://developer.android.com/guide/topics/data/data-storage.html#filesInternal
如果标题中的问题答案是肯定的.有人可以提供一个简单的例子来创建一个子文件夹并将文件添加到该文件夹吗?并且可能会显示如何从子文件夹中读取文件?
或者也许告诉我为什么下面的例子悲惨地失败了
更改file.mkdirs()后立即工作; to file.getParentFile().mkdirs();
请参阅以下答案中的说明
public static void Test(String path, String fileName, String fileStr, Context ctx)
{
SaveFile(path, fileName, fileStr, ctx);
String returnFileStr = ReadFile(path, fileName, ctx);
}
public static Boolean pathExists(String path, Context ctx)
{
Boolean result = false;
String[] pathSeqments = path.split("/");
String pathStr = "";
for(int i = 0;i<pathSeqments.length;i++ )
{
pathStr += pathSeqments[i];
if(!new File(ctx.getFilesDir() +"/" + pathStr).exists())
{
result = false;
break;
}
pathStr += "/";
result = true;
}
return result;
}
public static void SaveFile(String path, String fileName, String fileStr, Context ctx) {
try {
File file = new File(ctx.getFilesDir() +"/" + path, fileName); //new File(ctx.getFilesDir() +"/" + path + "/" + fileName);
file.getParentFile().mkdirs();
FileOutputStream fOut = new FileOutputStream(file);
OutputStreamWriter osw = new OutputStreamWriter(fOut);
osw.write(fileStr);
osw.flush();
osw.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
public static String ReadFile(String path, String fileName, Context ctx) {
String fileStr = null;
try {
if(pathExists(path, ctx))
{
File file = new File(ctx.getFilesDir() +"/" + path, fileName);
FileInputStream fIn = new FileInputStream(file);
StringWriter writer = new StringWriter();
IOUtils.copy(fIn, writer, "UTF-8");
fileStr = writer.toString();
}
} catch (IOException ioe) {
ioe.printStackTrace();
}
return fileStr;
}
Run Code Online (Sandbox Code Playgroud)
是否可以使用内部存储创建和维护包含文件的文件夹结构
是的,使用标准Java I/O.
或者也许告诉我为什么下面的例子悲惨地失败了
才华横溢的程序员知道如何描述症状,而不是使用像"悲惨失败"这样毫无意义的短语.
话虽如此,file.mkdirs();创建一个目录.然后尝试打开该目录,就像它是一个文件一样,用于向其写入数据.这对我所知道的任何操作系统都不起作用,当然也不适用于Android.请调用mkdirs()将创建文件父目录的内容(例如,file.getParentFile().mkdirs()).
此外,永远不要使用连接来创建File对象.使用正确的File构造函数.
| 归档时间: |
|
| 查看次数: |
2342 次 |
| 最近记录: |