【问题标题】:How to Update Node Value into Existing XML file Using Flash AS3如何使用 Flash AS3 将节点值更新到现有 XML 文件中
【发布时间】:2015-04-01 18:16:29
【问题描述】:

我有一个包含值的 Xml 文件,我正在使用带有 Action Script3 的 Flash AIR 应用程序,

<Home>
  <Name>John</Name >
  <RollNo>102</RollNo >
  <Age>25</Age >
  <Mark>70</Mark >
</Home >

为了读取xml文件,我使用了

var xmlLoader:URLLoader = null;
var xmlData:XML = new XML();
xmlLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, LoadingXMLData);
xmlLoader.load(new URLRequest("Details.xml"));

function LoadingXMLData(e:Event):void
{
    xmlData = new XML(e.target.data);
    ParseXML(xmlData);
}

function ParseXML(configData:XML):void 
{
    trace("XML Data : " + configData);
}

我想更新一个特定的节点值。 如何更新现有 XML 文件中的值。

更新我尝试过的值

xmlData.replace(xmlData.hostName,"Helooon");
trace("Updated XML Data : " + xmlData);

如何将这些写入现有的 XML 文件。

【问题讨论】:

标签: xml actionscript-3 flash urlrequest


【解决方案1】:

要将 XML 保存回文件,您必须在 Flash Player 中使用 FileReference.save(),或在 AIR 中使用 FileFileStream.writeUTFBytes()

编辑:我看到您正在使用 AIR 的评论,因此您可以使用 File 类。这是一个简单的例子:

var file:File = File.documentsDirectory.resolvePath("Details.xml");
var stream:FileStream = new FileStream();
stream.open(file, FileMode.WRITE);
stream.writeUTFBytes(xmlData);
stream.close();

请注意,由于 XML 是经过解析和重新编码的,因此格式可能会发生变化。您可以使用XML static formatting properties 控制格式化输出。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-14
    • 2013-05-24
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多