使用Java项目中的文件

时间:2016-12-27 20:01:43

标签: java eclipse file

我正在为我开发的After Effects脚本开发自定义安装程序。我的计划是将需要复制的文件放入某个目录中,放在我正在安装的安装程序的JAR文件中。

我的问题是这个。我应该在Java项目结构中放置哪些文件? (如果有帮助,我正在使用Eclipse)。其次,我如何访问这些文件并将其复制到最终用户计算机上的自定义位置?任何代码示例都会非常感激,因为我习惯于使用HTML和JavaScript进行开发。感谢。

- 作为附注,我知道此问题的变体已经发布过。然而,这些问题并没有特别具体,因此使用寿命很短。

2 个答案:

答案 0 :(得分:0)

jar中的文件是只读资源。可以用

来获取它们
ClassInJar.getResource("/.../.../readme.html")

getResourceAsStream等。

尼斯也是外在形式:

Path path = Paths.get("jar:file:/ ... install.jar!/.../.../readme.html");
Files.copy(path, ...);

在eclipse应用程序中使用getResource,其中jar可能不在类路径上(甚至不希望在类路径上)是不可行的,因此使用 jar:协议很容易从zip文件系统中复制文件。

答案 1 :(得分:0)

您可以在技术上将它们放在任何您想要的地方。约定在这里https://docs.gradle.org/current/userguide/java_plugin.html#sec:java_project_layout所以src / main / resources可能有意义,具体取决于你实际指的是什么。

复制文件可以通过很多方式完成。 (从这里偷来:https://examples.javacodegeeks.com/core-java/io/file/4-ways-to-copy-file-in-java/

private static void copyFileUsingJava7Files(File source, File dest)
        throws IOException {
    Files.copy(source.toPath(), dest.toPath());
}