Adobe Air - 用户首选项XML

时间:2012-03-15 19:23:49

标签: flex air

我需要使用Adobe Air创建和读取用户首选项XML文件。它将包含大约30个节点。

<id>18981</id>
<firstrun>false</firstrun>
<background>green</background>
<username>stacker</username>
...

这样做的好方法是什么?

1 个答案:

答案 0 :(得分:2)

编写一个“XML解析器”,它读取值并根据“保存首选项模型”了解要转换的数据类型。所以基本上你编写了一个方法/类,用于将数据从“保存首选项模型”写入XML,然后编写一个方法/类,用于从XML读取到“保存首选项模型”,您可以使用describeType作为两者。描述类型将返回模型类属性的XML描述以及这些属性和可访问性的类型(读/写,只读,只写)。对于所有读/写属性,您将它们存储到XML输出中,当读回它们时,您将执行相同的操作,除非您可以使用describeType输出中的type属性来确定是否需要将字符串设置为布尔值转换(if(boolValue ==“true”))和字符串到数字转换,parseInt或parseFloat。如果要保留历史记录,最终可以将XML存储在本地SQL数据库中,或者只将当前首选项存储在平面文件中(使用FileReference,或者在AIR中,可以使用FileStream直接写入位置)。

修改

同意Joshua的评论下面的本地共享对象是我在看到这个时首先想到的,你可以省去编写XML解析器/阅读器的需要,因为它将为你处理对象的序列化/反序列化(但是手动看着LSO可能很难看......无论如何我为我的另一个项目做了类似的事情,我试图剥离相关的代码,在我的例子中注意我在这里我没有使用描述类型,但一般的概念是相同: http://shaunhusain.com/OnePageSaverLoader/index.php