//调用方法
String dirPath = ContextCompat.getExternalFilesDirs(MainActivity.this,
Environment.DIRECTORY_DCIM)[0].getAbsolutePath() + File.separator + "PrintFile";
try {
copyAssetToFile("庭审系统安卓端操作手册.pdf",dirPath,"/庭审系统安卓端操作手册.pdf");
} catch (IOException e) {
Log.e("tyl","IOException="+e.getMessage());
e.printStackTrace();
}
//读取到本地file文件
File file = new File(dirPath+"/庭审系统安卓端操作手册.pdf");
/**
* 复制assets下的文件到本地文件
* assetName assets内的文件名称
* savepath 本地文件夹路径
* savename 保存的文件名称需带后缀文件类型 如.pdf
* @throws IOException
*/
public void copyAssetToFile(String assetName, String savepath, String savename) throws IOException {
InputStream myInput;
File dir = new File(savepath);
if (!dir.exists()) {
dir.mkdirs();
}
File dbf = new File(savepath + savename);
if (dbf.exists()) {
dbf.delete();
}
String outFileName = savepath + savename;
OutputStream myOutput = new FileOutputStream(outFileName);
myInput = this.getAssets().open(assetName);
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer)) > 0) {
myOutput.write(buffer, 0, length);
}
myOutput.flush();
myInput.close();
myOutput.close();
}
网友评论