java怎么用java修改.properties文件键值,文件在java包中。我能读到这个文件。但无法修改

如下面的图片。我如何修改info.properties中的键值呢?我的代码如下,修改不了。publicvoidwriteData(Stringkey,Stringvalu... 如下面的图片。我如何修改info.properties中的键值呢?
我的代码如下,修改不了。

public void writeData(String key, String value) {
Properties prop = new Properties();
InputStream fis = null;
OutputStream fos = null;
try {
java.net.URL url = this.getClass().getResource("/com/zst/warning/config/info.properties");
File file = new File(url.toURI());
System.out.println(url.toURI());
if (!file.exists()) {
file.createNewFile();
}
fis = new FileInputStream(file);
prop.load(fis);
fis.close();
fos = new FileOutputStream(file);
prop.setProperty(key, value);
prop.store(fos, "zst");
fos.close();

} catch (IOException e) {

System.err.println("Visit for updating "+ value + " value error");
} catch (URISyntaxException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{

}
}
展开
 我来答
llei32wang
2013-05-06 · TA获得超过2736个赞
知道大有可为答主
回答量:1478
采纳率:60%
帮助的人:1406万
展开全部
读出来后用set方法修改属性,然后再用Properties 的save方法保存修改 并且覆盖原来的info.properties文件不就行了。不过save方法用的输出流 需要用filewriter写入/com/zst/warning/config/info.properties文件。
web项目应该没问题,如果是java应用程序打成jar包后的话就比较麻烦了。要先解压修改了以后还要再重新打包
追问
是java应用程序。
科技大互联
2013-05-06 · TA获得超过117个赞
知道小有建树答主
回答量:235
采纳率:0%
帮助的人:92.7万
展开全部
fos = new FileOutputStream(file);
写入是时候是使用OutputStream();
不是FileOutputStream();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小屠户
2013-05-06 · TA获得超过383个赞
知道小有建树答主
回答量:329
采纳率:100%
帮助的人:226万
展开全部
把你的那句换成prop.store(fos, "Update '" + key + "' value");
追问
跟这件根本没关系,"Update '" + key + "' value"只是注释而异,怎么写没关系,现在问题是输出流和输入流文件的文章怎么设置。
追答
prop.load(fis);  
fis.close(); //跟这里的关闭有关吧,建议最后关闭
fos = new FileOutputStream(file);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
熊猫哥哥新新de0
2017-09-16 · TA获得超过175个赞
知道答主
回答量:205
采纳率:41%
帮助的人:31.2万
展开全部

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式