我正在做以下事情
String str = "this is the new string"; URL resourceUrl = getClass().getResource("path_to_resource"); File file = new File(resourceUrl.toURI()); BufferedWriter writer = new BufferedWriter(new FileWriter(file)); writer.write(xml); writer.close();
在上面的代码中,我试图写入一个Java包中包含的资源文件。执行完代码后,我的程序可以正常运行,但是该文件只是更新web- INF中的属性文件,而不是将其更新到存储它的包中。谁能帮我弄清楚我该如何实现这一目标,或者我在这里做错了什么?非常感谢。
您不应该尝试写入与应用程序类一起存储的文件。根据应用程序服务器的不同,您尝试写入的位置可能无法写入,或者应用程序可能正在从应用程序存档(.war文件)运行。
您应该使用一个外部文件夹来存储配置和其他应用程序数据。通常,您可以通过部署期间指定的环境变量或属性来指定此文件夹。