我正在尝试使用资产文件夹中的目录并将其作为File
. 是否可以访问 Assets 目录中的某些内容File
?如果没有,如何将目录从 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 复制到本地目录,或者是否可以将我的 Assets 中的目录作为File
?
编辑
这就是我为自己的项目解决它的方法:
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;
}