代码之家  ›  专栏  ›  技术社区  ›  KB22

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

  •  3
  • KB22  · 技术社区  · 15 年前

    玩弄一个财产档案,我觉得 限制在单个属性中保存40个字符。

    我执行以下操作:

    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.");
    

    结果是,只有前37个字符被保存,扩展为“…”。 我揭穿了属性的价值观,写的 对档案来说似乎是个问题。

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

    蒂亚

     K
    
    2 回复  |  直到 15 年前
        1
  •  8
  •   Peter    15 年前

    没有这样的限制

    既然您提到“…”我有一个问题:您是否在jLabel中显示值? “…”是jLabel呈现过长字符串的典型方式。

    还有一种更容易保存属性的方法

    File propertiesfile=new File("fileName.props");
    propstosave.store(new FileOutputStream(propertiesfile), "groupnames");
    
        2
  •  12
  •   dfa    15 年前

    你正在使用 用于保存文件的调试功能。 这个 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");