首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

生成properties文件的有关问题

2012-02-24 
生成properties文件的问题Properties p new Properties()p.setProperty(sb, sb)p.setProperty(repo

生成properties文件的问题
Properties p = new Properties();
p.setProperty("sb", sb);
p.setProperty("reportname", reportTitle);
p.setProperty("paramdefault", paramDefault.toString());

try {
PrintStream fw = new PrintStream(new File(request.getSession()
.getServletContext().getRealPath("ebsys/ebfile"),
reportTitle + ".properties"));

p.list(fw);
fw.close();
} catch (IOException e) {
e.printStackTrace();
}


properties文件内容:sb=
  reportname=
  paramdefault=

当写进去的字符串超过一定长度的时候,字符串不全部写进去,以“...”代替
怎么解决?

[解决办法]

Java code
p.setProperty("sb", sb.length()<8 ? sb : sb.substring(0,8)+"...");p.setProperty("reportname", reportname.length()<8 ? reportname : reportname.substring(0,8)+"...");p.setProperty("paramdefault", paramdefault.length()<8 ? paramdefault : paramdefault.substring(0,8)+"...");
[解决办法]
Java code
p.store(fw,"");
[解决办法]
p.list(fw);
这个默认超过40个字符后,行为就和你描述的一样了
[解决办法]
探讨

p.list(fw);
这个默认超过40个字符后,行为就和你描述的一样了

[解决办法]
类似下面的代码你尝试看看
Java code
public static void main(String[] args) throws Exception {    PrintWriter inputStream=new PrintWriter("e:/aa.properties","UTF-8");    Properties properties=new Properties();    properties.setProperty("test", "中国");    properties.list(inputStream);    inputStream.close();    }
[解决办法]
p.setProperty("reportname", reportTitle);
 p.setProperty("paramdefault", paramDefault.toString());

reportTitle和paramDefault.toString()打印出来是乱码么?
如果这里是乱码就转码,然后
Java code
OutputStream out = new FileOutputStream(f);            OutputStreamWriter osw = new OutputStreamWriter(out,"utf-8");            p.setProperty("sb", "是乱码吗");            p.store(osw, ""); 

热点排行