【问题标题】:Putting files within a zip folder into an array of strings by path将 zip 文件夹中的文件按路径放入字符串数组中
【发布时间】:2013-04-02 21:33:29
【问题描述】:

首先,用户使用仅限于 .zip 扩展名的 JFileChooser 浏览包含其 Java 项目的 zip 文件。

然后我希望将所有文件路径作为字符串存储在一个数组中。

浏览...按钮:

btnBrowse.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        int returnVal = fileChooser.showOpenDialog(null);
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File zip = fileChooser.getSelectedFile();
            // This is where the I need help.
        }
    }
});

所以我的数组会是这样的:

[path\to\java\file, path\to\java\file, path\to\java\file, path\to\java\file]

有人可以帮我吗?

【问题讨论】:

  • 你的代码真的有问题吗?你还没有提到一个。
  • 你可以从这里开始 - ZipFile.entries
  • 你是说文件名应该是数组?
  • @Jābir 不仅仅是文件名,还有整个路径。
  • @DaveRlz 不,这不是问题,我只是想知道人们是否可以帮助找到预期任务的解决方案。

标签: java arrays zip extract jfilechooser


【解决方案1】:

使用此方法获取选定文件的列表。

File[] zipFiles = fileChooser.getSelectedFiles();

然后

for (File file : zipFiles )
  {
      System.out.println(file .getAbsoluteFile()); // will print path
      // Add to array here
  }

【讨论】:

  • 我不认为你理解我想要实现的目标,这只会打印每个 zip 文件的路径,我想获取 zip 文件中文件的路径。
  • 这个[javaworld.com/community/node/8362] 教程详细解释了如何处理 zip 文件,包括其中的列表文件
  • 很棒的资源!我现在有一个包含所有文件名的 ArrayList。所以我非常接近我想要的,但我发现很难解释 :)
【解决方案2】:

您可能想查看java.util.zip 包。它 提供用于读写标准ZIPGZIP 文件格式的类。

【讨论】:

    猜你喜欢
    • 2017-06-16
    • 2012-08-27
    • 1970-01-01
    • 1970-01-01
    • 2015-02-15
    • 1970-01-01
    • 1970-01-01
    • 2021-12-30
    • 2022-01-12
    相关资源
    最近更新 更多