【发布时间】:2021-02-22 20:09:30
【问题描述】:
我已将我的 JavaFX 项目转换为 jar 文件,这些帖子帮助我成功地从本地环境中读取了项目所需的媒体文件:
- Media folder in jar file
- How to read a file from jar in Java?
- Including pictures and sound files in a runnable jar file from Eclipse
现在在项目的一部分中,我需要在项目运行期间在我的电脑中创建一个文件夹,该文件夹将存储通过程序获得的一些数据。现在我正在使用这个命令来执行这个目的:
String file_name= String.valueOf(Main.class.getResource("data stored/"+name+"-"+Long.toString(time)));
new File((file_name)).mkdirs();
在这里,我只是按照用于读取文件的类似步骤(在附加帖子中提到)。但是当我运行 jar 文件时,一切正常,只是没有创建文件夹。如果我不写这部分:Main.class.getResource,jar 文件会显示一个明显的错误。我认为原因可能是,为了阅读,它需要主类的引用,但对于创建文件夹,相对于类的引用是不正确的。
我的主课路径:
src/brainwave/Main.java
我要创建的文件夹的路径:
src/data stored
请问有什么建议可以解决这个问题吗? 谢谢。
【问题讨论】:
-
请保持您的标签集中 - 这是纯 java,与 javafx 无关。并在公开展示代码时遵守 java 命名约定
-
您不能在应用程序运行时修改 jar 文件。如果你想这样做,你将不得不对 jar 进行一些创造性的复制、添加文件夹、重新打包,然后运行新版本...
-
a
.jar只是打包您的 java 应用程序以进行分发的一种方式 - 本质上它是一个.zip文件,其中包含有关存储在其中的 java 应用程序的一些信息... -
如何获取文件应该保存的路径?