我在Eclipse中有一个java应用程序,它使用像这样的eml文件
File matches = new File("matches.xml");
该文件与所有其他类一样位于默认包中。当我创建JAR时,它会在XML文件中捆绑它。我的应用程序要求我能够对XML文件进行更改。如何设置它以便JAR可以引用XML文件?
答案 0 :(得分:1)
如果您使用的new File("matches.xml")
根本不会使用jar文件中的文件。它只会查看外部文件系统。
如果您需要能够使用外部文件(如果存在),或者将jar文件中的版本作为后备文件,则需要测试该文件是否存在(File.exists()
)并使用{{ 1}}用于回退行为。
答案 1 :(得分:1)
我的应用程序要求我能够对XML文件进行更改。
然后,您需要从Jar中提取它并将其保存在本地文件系统的某个位置。
有关详细信息,请参阅How can an app use files inside the JAR for read and write?。
答案 2 :(得分:0)
由于您希望将文件保留在jar外部并希望更新它以便jar可以读取,因此您可以将该文件放在jar所在的同一目录中,并使用以下代码访问该文件
FileInputStream file = new java.io.FileInputStream("matches.xml");
所以这可以是目录结构。
- matches\
- matches.jar
- matches.xml