最近做项目时,有一个功能是App第一次进入时会将assets目录下的文件自动写入到本地指定文件下。
<span style="font-size:18px;">private void copyAssetsFiles(Context context, String oldPath, String newPath) { //oldPat是你都写的目录名称;</span>
<span style="font-size:18px;"> //newPath是你要写入到本地的路径名称
try {
String fileNames[] = context.getAssets().list(oldPath);// 获取assets目录下的所有文件及目录名
if (fileNames.length > 0) {// 如果是目录
File file = new File(newPath);
file.mkdirs();
// 如果文件夹不存在,则递归
for (String fileName : fileNames) {
copyAssetsFiles(context, oldPath + "/" + fileName, newPath
+ "/" + fileName);
}
} else {// 如果是文件
InputStream inputStream = context.getAssets().open(oldPath);
FileUtils.writeFile(new File(newPath), inputStream);
}
} catch (Exception e) {
e.printStackTrace();
}
}</span>