关于java.util.Properties???????????

hzpike 2003-04-05 08:47:48
要修改某个配置文件(把table.created项目值变为true),用如下函数
protected boolean setProperties(String file)
{
Properties Props = new Properties();
try
{
FileOutputStream fis = new FileOutputStream(file);
Props.setProperty("table.created","true");
Props.store(fis,"Votes.properties");
fis.close();
}
catch(IOException ex)
{
ex.printStackTrace();
return false;
}
return true;
}

运行上述函数后发现table.created的值的确变成true了,问题是整个文件被重写了,原来除table.created外的其他项目及它们的值全部没有了。

有没有办法只改变配置文件Votes.properties中一个项目的值而其他项目都不变???(把其他项目都先读出来再写进去的方法除外)
...全文
52 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hzpike 2003-04-06
  • 打赏
  • 举报
回复
protected boolean setProperties(String file)
{
Properties Props = new Properties();
try
{
Props .load(new FileInputStream(file));
FileOutputStream fis = new FileOutputStream(file);
Props.setProperty("table.created","true");
Props.store(fis,"Votes.properties");
fis.close();
}
catch(IOException ex)
{
ex.printStackTrace();
return false;
}
return true;
}

好像还是不行
zez 2003-04-05
  • 打赏
  • 举报
回复
Props .load(new FileInputStream("你的文件"));
这样就都取得了,然后修改,然后保存...

我想只有这个办法吧....
管你几个属性呢,有什么不行的 ???
peacock_king 2003-04-05
  • 打赏
  • 举报
回复
呵呵,我是不知道有什么简单的方法,直接就能改文件中的某行,如果真能这样,那还要数据库作什么?
hzpike 2003-04-05
  • 打赏
  • 举报
回复
我都说了,读所有属性的办法不行,因为其他程序会增减属性个数,属性有多少个是在动态变化的。
狐帝 2003-04-05
  • 打赏
  • 举报
回复
你应该先把这个文件中的所有属性都读出来,修改需要更改的值,然后再写回去。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧