У меня есть приложение для Android, в которое пользователь может вводить данные и сохранять их в виде XML-файла на устройстве. Я пытался использовать разные библиотеки для записи данных в файл xml, но мне было трудно их использовать. Поэтому я сделал свой собственный метод, который проходит в LinkedHashMap с ключами, являющимися тегами xml. Он отлично работает, но когда пользователь возвращается в приложение и сохраняет новые данные, я хочу, чтобы он был добавлен в файл xml. Моя проблема в том, что я не могу удалить закрывающий тег в файле xml, чтобы добавить новые данные. Ниже приведен метод создания файла xml. Любая помощь горячо приветствуется.
public static void createxml(LinkedHashMap<String, String> map, String root) {
String s = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
StringBuilder sb = null;
sb = new StringBuilder(s);
sb.append("<");
sb.append(root);
sb.append(">");
if (fileExists = false) {
sb = new StringBuilder("<Soparc>");
}
for (String key : map.keySet()) {
sb.append("<");
sb.append(key);
sb.append(">");
sb.append(map.get(key));
sb.append("</");
sb.append(key);
sb.append(">");
}
sb.append("</");
sb.append(root);
sb.append(">");
String st = sb.toString();
try {
BufferedWriter output = new BufferedWriter(new FileWriter(dataFile,
true));
output.write(st);
output.close();
} catch (IOException e) {
e.printStackTrace();
}
}