我有一个Flash Builder应用程序,它在其代码中使用URL,我希望能够更改这些URL值而无需重新编译我的应用程序,即我想要一个我可以编辑的纯文本文件,用于填充应用程序开始时的这些URL值。我已经找到了使用ResourceBundles来做这件事的好处,但也许有更好或更直接的方法来解决这个问题。
作为一个例子,这就是我现在所拥有的:
var myUrl = "http://hard.coded.url";
我希望让应用程序读取属性文件并相应地设置变量:
var myUrl = getApplicationProperty("myUrl");
我将如何撰写getApplicationProperty()
?是否为ActionScript编写了一个流程,或者我是否需要通过打开文本(或XML)文件并将属性作为键/值对读取来自行完成?
提前感谢任何建议。
答案 0 :(得分:1)
您当然可以链接到.properties文件中的属性(例如用于本地化)
有关示例,请参阅http://www.visible-form.com/blog/flex-localization-with-resource-bundles/。
那说这些是在swf中编译的,在运行时读取它们的唯一方法就是编写自己的属性解析器。
换句话说,XML更适合这种情况。
答案 1 :(得分:1)
如果您只想要一个带有key = value的配置文件,您可以使用自己的类来读取传递给它的配置文件,并将一个AssociativeArray返回给您。
这应该是一个非常简单的事情,不应该花费超过20分钟才能完成。
答案 2 :(得分:1)
正如Neeraj所说,用自己的班级完成任务非常快。创建一个加载配置的单例,解析它并完成! 或者更简单的解决方案 - 将您的配置创建为xml文件并加载它。
关于ini文件,这里有一个快速搜索结果:https://stackoverflow.com/a/589725/965722
EDIT 还有另一种方法:您可以创建一个自定义预加载器类,它将在运行时加载您的配置。 https://stackoverflow.com/a/2788565/965722 - 使用Google进行快速搜索。