属性文件字符串长度限制(JAVA)

时间:2009-08-10 08:11:51

标签: java file properties

玩一个属性文件我认为似乎有 限制40char以保存在单个属性中。

我执行以下操作:

File configFile = new File("config.properties");

Properties props = new Properties();
props.put( "cc_server", "sort_of_a_long_string_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
FileOutputStream fos = new FileOutputStream( configFile );
PrintWriter pw = new PrintWriter( fos );
props.list( pw );
pw.flush();
pw.close();         
System.out.println("done.");

结果是,只有第一个37char被保存,扩展为“...”。 我认为PropertiesHash有正确的价值,写作 到文件似乎是问题。

有没有办法延长/关闭此限制?

TIA

 K

2 个答案:

答案 0 :(得分:12)

您正在使用调试功能来保存文件。 list()方法并非用于将属性保存到文件,您应该使用store()方法:

File configFile = new File("config.properties");
Properties props = new Properties();
props.put("cc_server", "sort_of_a_long_string_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
props.store(new FileOutputStream(configFile),"aaa");

答案 1 :(得分:8)

没有这样的限制

既然你提到“......”我有这个问题:你是否在JLabel中显示了这个值? “...”是JLabel渲染String太长的典型方式。

还有一种更简单的方法来保存属性

File propertiesfile=new File("fileName.props");
propstosave.store(new FileOutputStream(propertiesfile), "groupnames");