Мне нужно общаться со сторонним программным обеспечением через файлы INI, и я использую для этого библиотеку ini4j.
Все шло хорошо, пока мне не понадобилось использовать ключ длиной> 80 символов.
Библиотека возвращает:
Исключение в потоке "main" java.lang.IllegalArgumentException: Слишком длинный ключ: 0123456789012345678901234567890123456789012345678901456789234567894567892323676723.reference.px.p67.p0 .6767.p0.Java: 243)
Библиотека установила это в Preferences.java:
public static final int MAX_KEY_LENGTH = 80;
Есть ли чистый способ обойти это?
Я нашел здесь что-то связанное, но я не уверен, как его использовать: http://ini4j.sourceforge.net/apidocs/index.html?org/ini4j/addon/StrictPreferences.html
Это пример кода:
try {
Wini ini = new Wini(new File("test.ini"));
ini.getConfig().setStrictOperator(true);
ini.getConfig().setEscape(false);
java.util.prefs.Preferences prefs = new IniPreferences(ini);
prefs.node("Section").put("0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789", "Test");
ini.store();
} catch (IOException e) {
e.printStackTrace();
}