3

我正在使用 Haxe 和 OpenFL,我得到了一个生成 Xml 文件的程序。

但是,我不知道如何保存该文件。我可以创建 Xml 树并检查它是否有效,但对于我的生活,我无法弄清楚如何编写文件。

那么,简单来说,如何在 Haxe 中编写(和创建)文件?我希望能够将我新创建的 Xml 文件(它们用作我的程序的设置文件和初始化文件)保存在计算机上,以便以后加载它?

4

1 回答 1

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 不起作用

于 2013-08-11T20:25:52.020 回答