【问题标题】:Java ini without spaces没有空格的Java ini
【发布时间】:2013-07-25 10:09:41
【问题描述】:

我尝试使用 ini4j 和 inieditor 从 java 更改 ini 配置文件。不幸的是,这两个库都重写了文件,在 = 符号旁边放置了空格...

这会破坏它尝试配置的 C 库。

#This is a sample of what I get:
[root]
role = administrator
last_login = 2003-05-16

#This is what I need:
[root]
role=administrator
last_login=2003-05-16

我看到 ini4j 有一个名为 FancyIniFormatter 的东西,它显然就是这样做的,但我无法找到有关用法的正确文档...http://www.jarvana.com/jarvana/view/org/ini4j/ini4j/0.4.0/ini4j-0.4.0.jar!/org/ini4j/addon/FancyIniFormatter.class?classDetails=ok

我希望从库中本地执行此操作,但我始终可以加载文件并执行正则表达式操作,但如果我可以避免它,那就太好了。

谢谢,

【问题讨论】:

    标签: java configuration ini


    【解决方案1】:

    ini4j 格式化程序基于Config。在此配置中,分隔符设置为 char '=',但在 IiniFormatter 类中,您有另一个分隔符声明为字符串“=”。当Config#isStrictOperator 设置为false 时使用此类型。

    Config config = new Config();
      config.setStrictOperator(true);
    
    IniFormmater formater = IniFormmater.newInstance(out, config);
    

    【讨论】:

    • 格式化程序如何使用一分钟教程部分中的 Wini 示例ini4j.sourceforge.net/tutorial/OneMinuteTutorial.java.html
    • 我从来没有使用过那个框架,但是从 JavaDoc 然后 Wini 继承自 Ini 并且你有方法 Ini#setConfig(Config)。我认为当您将配置设置为格式化程序时,结果应该符合预期。
    • 我使用了config.setStrictOperator(true)。 = 周围的空格被删除。但是我在分号周围插入了很多 \\ 。如何摆脱 \\?
    猜你喜欢
    • 2016-01-03
    • 2022-11-04
    • 2015-08-18
    • 1970-01-01
    • 2013-08-03
    • 1970-01-01
    • 2013-04-25
    • 1970-01-01
    相关资源
    最近更新 更多