如何在 Java 中使用 truezip 从 tar 中的 jar 中列出文件()?

发布于 2024-10-26 04:36:51 字数 92 浏览 1 评论 0原文

我试图列出 tar 中的所有文件,包括 jar 中的文件。

如何在 Java 或其他 api 中使用 truezip 来做到这一点?

谢谢

I am trying to list all files in a tar, including files in jar.

How can I do this by using truezip in Java or other api?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

无人问我粥可暖 2024-11-02 04:36:59

在 stackoverflow 中找到了类似的线程
如何在 Java 中提取 tar 文件?

希望上面的链接有帮助。

这将列出 jar 中的文件。
您可以使用 JarFile 和 JarEntry 的组合来获取列表。

JarFile randomJar = new JarFile("randomname.jar");
Enumeration enumEntries = randomJar.entries();
while (enumEntries.hasMoreElements()) {
    JarEntry jarEntry = (JarEntry)enumEntries.nextElement();
    String name = jarEntry.getName();
    System.out.println("Name = " + name );
}

http://download.oracle。 com/javase/1.4.2/docs/api/java/util/jar/JarFile.html
http://download.oracle。 com/javase/1.4.2/docs/api/java/util/zip/ZipEntry.html

Found a similar thread here in stackoverflow
How do I extract a tar file in Java?

Hope the above link helps.

This will list files in a jar.
You can use a combination of JarFile and JarEntry to get the list.

JarFile randomJar = new JarFile("randomname.jar");
Enumeration enumEntries = randomJar.entries();
while (enumEntries.hasMoreElements()) {
    JarEntry jarEntry = (JarEntry)enumEntries.nextElement();
    String name = jarEntry.getName();
    System.out.println("Name = " + name );
}

http://download.oracle.com/javase/1.4.2/docs/api/java/util/jar/JarFile.html
http://download.oracle.com/javase/1.4.2/docs/api/java/util/zip/ZipEntry.html

他不在意 2024-11-02 04:36:58

使用 TrueZIP 7,您可以使用如下内容:

public static void main(String args[]) throws IOException {
    // Remember to set to add the following dependencies to the class path:
    // Compile time artifactId(s): truezip-file
    // Run time artifactId(s): truezip-kernel, truezip-driver-file, truezip-driver-tar, truezip-driver-zip
    TFile.setDefaultArchiveDetector(new TDefaultArchiveDetector("tar|zip"));
    search(new TFile(args[0])); // e.g. "my.tar" or "my.zip"
    TFile.umount(); // commit changes
}

private void search(TFile entry) throws IOException {
    if (entry.isDirectory()) {
        for (TFile member : dir.listFiles())
            search(member);
    } else if (entry.isFile()) {
        // [do something with entry]
    } // else is special file or non-existent
}

Using TrueZIP 7, you could use something like this:

public static void main(String args[]) throws IOException {
    // Remember to set to add the following dependencies to the class path:
    // Compile time artifactId(s): truezip-file
    // Run time artifactId(s): truezip-kernel, truezip-driver-file, truezip-driver-tar, truezip-driver-zip
    TFile.setDefaultArchiveDetector(new TDefaultArchiveDetector("tar|zip"));
    search(new TFile(args[0])); // e.g. "my.tar" or "my.zip"
    TFile.umount(); // commit changes
}

private void search(TFile entry) throws IOException {
    if (entry.isDirectory()) {
        for (TFile member : dir.listFiles())
            search(member);
    } else if (entry.isFile()) {
        // [do something with entry]
    } // else is special file or non-existent
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文