[英]FileInputStream Javafx in .jar files
我正在Intelij中创建Javafx应用程序, FileInputStream
可以完美运行。 但是,当我从项目中创建一个.jar文件并尝试运行它时,由于无法在文件输入流中找到该文件,因此代码无法运行。 这是我的代码:
ObjectInputStream os = new ObjectInputStream(new FileInputStream("src/settingStorage.bin"));
难道我做错了什么?
在jar之外访问文件始终存在一些问题,具体取决于文件位置。 您可以检查该SO问题/答案以了解有关访问文件的想法。
尝试这个:
编辑:再看一次,我遗漏了一部分。
ObjectInputStream os = new ObjectInputStream(new FileInputStream(SomeClass.class.getResourceAsStream(“settingStorage.bin")));
这通常对我有用。 当我运行它时,它可以很好地在开发区域之外运行。 不要包含/ src,因为当您从类中调用getResourceAsStream时,它已经在jar中进行了检查。
干杯!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.