我有来自资产文件夹的密码保护的压缩文件。Android库不支持密码保护文件,所以我使用了zip4j库。但我不能从资产中提取文件。
ZipFile zipFile = new ZipFile("file:///android_asset/db.zip");
zipFile.setPassword("qwe");发布于 2016-08-28 14:11:03
file:///android_asset几乎只适合WebView。
如果zip4j有一个接受InputStream的ZipFile构造函数,您可以通过getAssets().open("db.zip")获得资产上的流。
否则,首先需要将db.zip从资产复制到本地文件(例如,在getCacheDir()中),然后使用zip4j,然后删除本地db.zip文件。
或者,由于破解ZIP存档上的加密非常简单(据我上次检查),所以请将内容unZIP到项目的assets/目录中,并更直接地使用它们,而不是将受密码保护的ZIP放入assets/。
https://stackoverflow.com/questions/39192133
复制相似问题