解压assets中的zip压缩文件到指定目录
2013-11-03 22:12
453 查看
解压函数:
调用(最好放到线程中):
ps:apk在安装的时候,无法创建自定义的文件夹,无法在应用程序中用代码控制。
apk中的资源文件并不会在安装的时候释放到某一路径中,可以通过java代码访问,但是无法获得其绝对路径,其它语言是无法直接访问的;
只能创建文件,如果连路径都没有,那是会报错的。
还有就是写文件注意加权限
/** * 解压assert中的文件到指定目录 * @param is 文件输入流 * @param dir 目标路径(路径已存在) * @throws IOException */ private void unzip (InputStream is, String dir) throws IOException { File dest = new File(dir); if ( !dest.isDirectory()) throw new IOException("Invalid Unzip destination " + dest); if(null == is){ throw new IOException("InputStream is null"); } ZipInputStream zip = new ZipInputStream(is); ZipEntry ze; while ( (ze = zip.getNextEntry()) != null ) { final String path = dest.getAbsolutePath() + File.separator + ze.getName(); // Create any entry folders String zeName = ze.getName(); char cTail = zeName.charAt(zeName.length() - 1); if ( cTail == File.separatorChar) { File file = new File(path); if(!file.exists()){ if ( !file.mkdirs() ){ throw new IOException("Unable to create folder " + file); } } continue; } FileOutputStream fout = new FileOutputStream(path); byte[] bytes = new byte[1024]; int c; while((c = zip.read(bytes)) != -1){ fout.write(bytes,0, c); } zip.closeEntry(); fout.close(); } }
调用(最好放到线程中):
try{ unzip(getAssets().open("data.zip"), "/mnt/sdcard"); }catch(IOException e){ e.printStackTrace(); }
ps:apk在安装的时候,无法创建自定义的文件夹,无法在应用程序中用代码控制。
apk中的资源文件并不会在安装的时候释放到某一路径中,可以通过java代码访问,但是无法获得其绝对路径,其它语言是无法直接访问的;
只能创建文件,如果连路径都没有,那是会报错的。
还有就是写文件注意加权限
相关文章推荐
- assets里的zip压缩文件并解压到指定路径下保存
- 使用ZLIB生成DLL文件,并进行有中文的ZIP文件压缩与解压操作!支持目录压与解!
- Linux解压指定目录下zip和rar文件
- symbian s60 将一个带有目录的zip文件解压到指定目录
- linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录
- linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?
- linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?
- linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?
- linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?
- linux压缩解压之 gzip --可压缩目录中的文件,不同于zip
- 将压缩文件解压到指定目录
- java 将文件/目录下 zip压缩文件解压并删除压缩包
- 压缩与解压指定目录下的指定文件
- Linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?
- 《OD学hadoop》在LINUX下如何将tar压缩文件解压到指定的目录下
- JAVA读取zip文件 JAVA读取压缩文件 解压zip里面的指定格式文件
- golang zip 压缩,解压(含目录文件)
- linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?
- php上传zip文件在线解压文件在指定目录下,CI框架版本
- zip压缩多个路径的文件或目录到指定zip