我想在我的 android 应用程序中应用 zip4j。我将演示 zip 文件放入资产文件夹 ( main/assets/test.zip)。我想用 zip4j 打开它:
import net.lingala.zip4j.core.ZipFile;
...
ZipFile zipFile = new ZipFile(new File("an/absolute/path/is/required"));
但是,应用 zip4j 所需的构造函数需要一个String对象(文件的绝对路径)或File对象。但是 Android 的 AssetManger 只返回一个InputStream. 也请不要:AssetManger 不提供绝对路径或其他东西。
那么,我必须做什么才能将输入流InputStream is = getResources().getAssets().open(filename);转换为一个java.io.File对象,然后我可以将其应用于ZipFile