关于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中一个项目的值而其他项目都不变???(把其他项目都先读出来再写进去的方法除外)
...全文
21 点赞 收藏 5
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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
你应该先把这个文件中的所有属性都读出来,修改需要更改的值,然后再写回去。
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2003-04-05 08:47
社区公告
暂无公告