我正在使用Haxe和OpenFL,我得到了一个生成Xml文件的程序。
但是,我无法弄清楚如何保存该文件。我可以创建Xml树并检查它是否有效,但对于我的生活,我无法弄清楚如何编写文件。
那么,简单来说,如何在Haxe中编写(和创建)文件?我希望能够在计算机上保存我新创建的Xml文件(它们作为我的程序的一些设置文件和初始化文件),以便我可以在以后加载它?
答案 0 :(得分:3)
在写完这个问题后立即找到解决方案。
解决方法是首先使用sys.io.File.write()创建文件,然后使用File.saveContent()来保存数据。你可以从带有toString函数的Xml中获取字符串,最终解决方案看起来像这样:
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无法正常工作