我用XML以编程方式创建不同的XML文件;哪作得很好。为了给这些XML文件的潜在读者提供额外的提示,我想用""添加描述性注释行,以便在例如正确地突出显示这些行。 notepad ++或sublime pro。
我可以附加一个评论节点,就像这是一个描述 但是那条评论并没有突出显示为评论。
我尝试了几个想法,例如转义尖括号,包括对包含在新XML元素中的CDAT构造的注释,...
但没有任何方法可以按照我想要的方式运作。
简而言之: 如何在AS3中创建这样的结构:
`<node1>content node1</node1>
<!-- add your sub nodes here -->
<node2>content node2</node2>`
UPDATE /解决方案: 感谢@akmozo,我终于解决了我的问题。 我的错误是:
我信任我的IDE告诉我声明错误,其中表示&#34;预期表达式#34;。所以我甚至没有开始我的计划;什么是错误。 只有在我想得到更详细的错误消息后,我才能发布作为答案并启动程序,它出乎意料地工作,没有任何警告或错误!
我错过了 XML.ignoreComments = false; 声明;或者更确切地说:我错误地将ignoreComment属性添加到我的xml对象中,而不是将其用作XML类的属性; - (
我的工作测试线看起来像这样:
var myNode:XML = <book />;
var pgNbr:String = "10";
var pgCount:String = "50";
var commentLine = "<!-- This is page #:" + pgNbr + ", out of " + pgCount + " pages -->";
XML.ignoreComments = false;
myNode.appendChild(new XML(commentLine));
结果很完美!
<book>
<!-- This is page #:10, out of 50 pages -->
</book>
答案 0 :(得分:1)
您可以将XML注释添加为任何其他XML子项,在您的情况下,您可以使用insertChildAfter()
,例如:
// to see your added comment
XML.ignoreComments = false;
var xml:XML = <data>
<node1>content node1</node1>
<node2>content node2</node2>
</data>;
xml.insertChildAfter(xml.node1, <!-- add your sub nodes here -->);
trace(xml.toXMLString());
给出
<data>
<node1>content node1</node1>
<!-- add your sub nodes here -->
<node2>content node2</node2>
</data>
希望可以提供帮助。
答案 1 :(得分:0)
简而言之,在处理XML和XMLList对象时,您无法做到。好消息是,你可以在使用字符串时。所以拿你的XML,转换为字符串,添加你的评论然后转换回XML。听起来太多了?那么,在向XML添加注释时,您需要在大多数编程语言中做些什么。