【发布时间】:2016-01-19 09:47:49
【问题描述】:
我正在尝试使用资产文件夹中的目录并将其作为File 访问。是否可以以File 的形式访问 Assets 目录中的某些内容?如果没有,如何将 Assets 文件夹中的目录复制到应用程序的本地目录?
我会像这样复制一个文件:
try
{
InputStream stream = this.getAssets().open("myFile");
OutputStream output = new BufferedOutputStream(new FileOutputStream(this.getFilesDir() + "/myNewFile"));
byte data[] = new byte[1024];
int count;
while((count = stream.read(data)) != -1)
{
output.write(data, 0, count);
}
output.flush();
output.close();
stream.close();
}
catch(IOException e)
{
e.printStackTrace();
}
但是,我不确定如何为目录执行此操作。
我宁愿不围绕不起作用的东西构建我的基础架构,那么我将如何将目录从 Assets 复制到本地目录,或者是否可以以 File 访问我的 Assets 中的目录?
编辑
这是我为自己的项目解决的方法:
InputStream stream = null;
OutputStream output = null;
for(String fileName : this.getAssets().list("demopass"))
{
stream = this.getAssets().open("directoryName/" + fileName);
output = new BufferedOutputStream(new FileOutputStream(this.getFilesDir() + "/newDirectory/" + fileName));
byte data[] = new byte[1024];
int count;
while((count = stream.read(data)) != -1)
{
output.write(data, 0, count);
}
output.flush();
output.close();
stream.close();
stream = null;
output = null;
}
【问题讨论】:
-
@dmaxi 我很欣赏这个建议,但是,我要复制的不是 Assets 目录,而是我要复制的 assets 文件夹中的一个目录。
-
这不会复制子目录,是吗?
-
复制子目录试试这个链接:stackoverflow.com/questions/4447477/…
-
复制子目录试试这个链接:
标签: android