如何检查该文件是否存在于 zip 存档中?

naX*_*aXa 6 java zip file-exists nio2

如何检查该文件是否存在于 zip 存档中?
例如,检查是否app.apk包含classes.dex.
我想找到一个使用 Java NIO.2Path并且尽可能不提取整个存档的解决方案。

我试过了,没有用:

Path classesFile = Paths.get("app.apk", "classes.dex");  // apk file with classes.dex
if (Files.exists(apkFile))  // false!
    ...
Run Code Online (Sandbox Code Playgroud)

naX*_*aXa 5

我的解决办法是:

Path apkFile = Paths.get("app.apk");
FileSystem fs = FileSystems.newFileSystem(apkFile, null);
Path dexFile = fs.getPath("classes.dex");
if (Files.exists(dexFile))
    ...
Run Code Online (Sandbox Code Playgroud)