Как записать в XML-файл в Haxe?
Я использую Haxe и OpenFL, и я получил программу, которая генерирует файл XML.
Однако я не могу понять, как сохранить этот файл. Я могу создать дерево XML и проверить его действительность, но я не могу понять, как написать файл.
Итак, по-простому, как мне написать (и создать) файл в Haxe? Я хочу сохранить свой недавно созданный Xml-файл (они служат своего рода файлом настроек и файлами инициализации для моей программы) на компьютере, чтобы я мог загрузить его позже?
1 ответ
Нашел решение сразу после написания этого вопроса.
Решение состоит в том, чтобы сначала использовать sys.io.File.write() для создания файла, затем File.saveContent() для сохранения данных. Вы можете получить строку из Xml с помощью функции toString, окончательное решение выглядит следующим образом:
if (!FileSystem.exists("maps"))
{
FileSystem.createDirectory("maps");
}
var number:Int = 1;
if (FileSystem.exists("maps/" + filename + ".xml"))
{
while(FileSystem.exists("maps/" + filename + number +".xml"))
{
number++;
}
filename = filename + number;
}
File.write("maps/" + filename + ".xml", false);
File.saveContent("maps/" + filename + ".xml", root.toString());
Это проверяет, существует ли каталог, и если нет, создайте его, и если файл существует, создайте новый пронумерованный файл, а не переопределяйте его (на данный момент все еще работает над функцией сохранения)
Это решение работает только на C++, еще не тестировал другие, но Flash не работает