Java 在.jar中编辑xml文件

Java 在.jar中编辑xml文件,java,xml,Java,Xml,因此,目前我可以在eclipse中运行程序时读取和写入xml文件,但当我将其导出为.jar时,写入不再有效 public void addHighscores(String naam, String score){ Document document = null; Element root = null; InputStream fis = getClass().getResourceAsStream("Highscores.xml")

因此,目前我可以在eclipse中运行程序时读取和写入xml文件,但当我将其导出为.jar时,写入不再有效

public void addHighscores(String naam, String score){
            Document document = null;
        Element root = null;

        InputStream fis = getClass().getResourceAsStream("Highscores.xml");
        SAXBuilder sb = new SAXBuilder();
        document = sb.build(fis);
        root = document.getRootElement();
        fis.close();


        Element player = new Element("player");
        player.addContent(new Element("name").setText(naam));
        player.addContent(new Element("score").setText(score));
        root.addContent(player);
        document.setContent(root);

        FileWriter writer = new FileWriter(path);
        XMLOutputter outputter = new XMLOutputter();
        outputter.setFormat(Format.getPrettyFormat());
        outputter.output(document, writer);
        outputter.output(document, System.out);
        writer.close();}

这就是作者的代码。xml文件与代码保存在同一个文件夹中,我不明白为什么它可以读取而不能写入。提前感谢

您不能回写类路径上的jar。但是,您可以做的是向类路径添加一个目录,并从该位置读/写XML文件。那对你很好。如果这是一个在Tomcat中运行的web应用程序,默认情况下Tomcat
lib
目录是类路径的一部分。因此,有一件事可以从“/myapp/conf/stuff.xml”中读取,并将
myapp/conf/stuff.xml
放在
lib
下,在构建jar后,您不能在类路径上编辑它。但是您可以在类路径中添加一个路径。您可以将文件放在该路径上并从该路径读取。请。

注意,出于安全原因,web应用程序通常无法写入lib目录。不制作web应用程序,但如何添加目录和读/写?同样,当在eclipse中启动程序并简单地说FileInputStream fis=newfileinputstream(“input/Highscores.xml”);在eclipse中工作,但在罐子中不工作