Изменение конфига

Версия Minecraft
1.7.10
29
1
Здравствуйте. Имеется конфиг такого вида:
Код:
general {
    # Список предметов [default: item, item2, item3]
    S:itemList <
       item
        item2
       item3
     >
}
Как мне в него добавлять строчки через код? Не пойму какой метод в конфиге за это отвечает.
 
Решение
Код:
String[] massiv = new String[0];

config.load();
massiv = config.get("main", "massiv", massiv).getStringList();
List<String> list = new ArrayList();
if (massiv.length > 0)
	for (int i = 0; i < massiv.length; ++i)
		list.add(massiv[i]);

list.add("NewName");//Своё значение

massiv = list.toArray(new String[0]);
config.get("main", "massiv", massiv).set(massiv);
config.save();

timaxa007

Модератор
5,831
409
672
Код:
String[] massiv = new String[0];

config.load();
massiv = config.get("main", "massiv", massiv).getStringList();
List<String> list = new ArrayList();
if (massiv.length > 0)
	for (int i = 0; i < massiv.length; ++i)
		list.add(massiv[i]);

list.add("NewName");//Своё значение

massiv = list.toArray(new String[0]);
config.get("main", "massiv", massiv).set(massiv);
config.save();
 
29
1
timaxa007 написал(а):
Код:
String[] massiv = new String[0];

config.load();
massiv = config.get("main", "massiv", massiv).getStringList();
List<String> list = new ArrayList();
if (massiv.length > 0)
 for (int i = 0; i < massiv.length; ++i)
 list.add(massiv[i]);

list.add("NewName");//Своё значение

massiv = list.toArray(new String[0]);
config.get("main", "massiv", massiv).set(massiv);
config.save();
Только что заметил, что ты исправил. Сидел 2ч, не мог понять почему не работает)
Подскажи пожалуйста еще, как я могу теперь какую-то определенную строку удалить?
 

timaxa007

Модератор
5,831
409
672
Да, поторопился выкладывать код.
Ну циклом пройтись по массиву (или лучше list) и искать подходящий String.
Код:
for (int i = 0; i < list.size(); ++i) {
	String stg =  list.get(i);
	if (stg != null && stg.equals("NewName"))
		list.remove(i);
}
 
29
1
timaxa007 написал(а):
Да, поторопился выкладывать код.
Ну циклом пройтись по массиву (или лучше list) и искать подходящий String.
Код:
for (int i = 0; i < list.size(); ++i) {
 String stg =  list.get(i);
 if (stg != null && stg.equals("NewName"))
 list.remove(i);
}
Со всем разобрался. Большое спасибо за помощь.
 

timaxa007

Модератор
5,831
409
672
Agravaine, вроде нет. Вроде кидает если пользоваться таким типом цикла:
Код:
for (String stg : list) {
if (stg != null && stg.equals("NewName"))
list.remove(stg);
}
Если я не ошибаюсь.
 
Сверху