关于java 的properties类 我想把properties文件里的‘=’改为‘:’例如:username=adminpassword=123改为:username:adminpassword:123请问各位高手,有可能实现吗?怎么实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那到底可不可以呢?我试了一下,即使原来我手动把‘=’改为‘:’,在用setProperty后,程序又改回‘=’,请问有什么办法来在properties文件中出现‘:’,而不是‘=’? 从Properties的源码来看,它从文件load的时候是处理了=和:两种情况的,‘但是在store的时候,却没有选项来设置用=还是:,直接以=保存了,如果你需要:的,只能自己继承Properties类并覆写它的store()方法了。它的源码的store和store0 public void store(OutputStream out, String comments) throws IOException { store0(new BufferedWriter(new OutputStreamWriter(out, "8859_1")), comments, true); } private void store0(BufferedWriter bw, String comments, boolean escUnicode) throws IOException { if (comments != null) { writeComments(bw, comments); } bw.write("#" + new Date().toString()); bw.newLine(); synchronized (this) { for (Enumeration e = keys(); e.hasMoreElements();) { String key = (String)e.nextElement(); String val = (String)get(key); key = saveConvert(key, true, escUnicode); /* No need to escape embedded and trailing spaces for value, hence * pass false to flag. */ val = saveConvert(val, false, escUnicode); bw.write(key + "=" + val); bw.newLine(); } } bw.flush(); }你只需要照搬store,再自己写一个private的store0(可能会出错,那就改成store1,主要是太久没用Java,忘了会不会出错了),把里面的=改成:,当然,你也可以写复杂一点,给个选项。 这就是Property类的格式啊,要实现你的功能也很简单啊:用PrintWriter输出自己的格式,再用BufferedReader读回来。 求MyEclipse英文版的,配置log4j的详细步骤 一段C代码转成JAVA,难住了很多高手,求解啊! 有谁知道哪有历年scjp习题集可供下载,并附有答案. 关于文件中文本的动态加载问题? 从eclipse启动Tomcat的问题 java 大虾请进 读取xml文件问题! 删除多余项 帮我看看,是什么问题? 一个我不懂的数据库访问问题,关于自动编号的获取 it.hasNext()的困惑 各位高手,请指点迷津。。。
我试了一下,即使原来我手动把‘=’改为‘:’,在用setProperty后,程序又改回‘=’,请问有什么办法来在properties文件中出现‘:’,而不是‘=’?
但是在store的时候,却没有选项来设置用=还是:,直接以=保存了,
如果你需要:的,只能自己继承Properties类并覆写它的store()方法了。它的源码的store和store0 public void store(OutputStream out, String comments)
throws IOException
{
store0(new BufferedWriter(new OutputStreamWriter(out, "8859_1")),
comments,
true);
} private void store0(BufferedWriter bw, String comments, boolean escUnicode)
throws IOException
{
if (comments != null) {
writeComments(bw, comments);
}
bw.write("#" + new Date().toString());
bw.newLine();
synchronized (this) {
for (Enumeration e = keys(); e.hasMoreElements();) {
String key = (String)e.nextElement();
String val = (String)get(key);
key = saveConvert(key, true, escUnicode);
/* No need to escape embedded and trailing spaces for value, hence
* pass false to flag.
*/
val = saveConvert(val, false, escUnicode);
bw.write(key + "=" + val);
bw.newLine();
}
}
bw.flush();
}
你只需要照搬store,再自己写一个private的store0(可能会出错,那就改成store1,主要是太久没用Java,忘了会不会出错了),把里面的=改成:,当然,你也可以写复杂一点,给个选项。
要实现你的功能也很简单啊:用PrintWriter输出自己的格式,再用BufferedReader读回来。