1

嗨,我坚持以下代码。我想从文件夹中获取文件,但是当我将项目导出到 jar 文件时,它不会起作用吗?

 public String getXSDfilenames() {
        String filenames= "";
        try {
            File currDir = new File(".");
            String path = currDir.getAbsolutePath();
            path = path.substring(0, path.length()-1);

             File file = new File(path+"src\\schemaFiles");     
            String[] files = file.list(new FilenameFilter() {
                public boolean accept(File dir, String name) {
                    return name.endsWith(".xsd");
                }
            });
            if (file.exists()) {
                for (int i = 0; i < files.length; i++) {
                    System.out.println(path+"src\\schemaFiles\\"+files[i]);
                filenames = filenames + files[i] + newline;
                }
            } else {
                System.out.println("No schema files founded in default folder!");
            }
        }
         catch (Throwable e1) {
        System.out.println(e1);
        }
        return filenames;
    }

}
4

1 回答 1

0

如果您将 XXX.jar 文件的名称更改为 XXX.zip,然后在任何可用的 Zip 文件实用程序中打开它,您可以查看文件内部并查看 1. 您的文件是否完全包含在 jar 中,如果是,2. 存储它们的实际路径。我强烈怀疑您的 jar 中现在有 src 文件夹。

此外,如果您不希望文件在 jar 中,那么您可能需要提供文件的绝对路径。

如果它们在罐子里,请检查以下问题:

在 jar 中加载文件

如何正确使用 ClassLoader.getResources()?,

如何列出 JAR 文件中的文件?

于 2013-08-23T14:04:30.113 回答