ActionScriotでXMLを操作する際に、よく使うメソッドのメモです。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
var xml:XML =
<root>
	<item id="1">
		<name>test1</name>
		<url>www.example1.com</url>
	</item>
	<item id="2">
		<name>test2</name>
		<url>www.example2.com</url>
	</item>
	<item id="3">
		<name>test3</name>
	</item>
</root>;
 
//一つ目(0番目)の「item」ノード内の「name」ノードの内容を取得
trace(xml.item[0].name)
//test1
 
//二つ目の「item」ノードの「id」属性を取得
trace(xml.child("item")[1].@id)
//2
 
//「item」ノードの数を取得
trace(xml.item.length());
//3
 
//「item」ノード内の「url」ノードの数を取得
trace(xml.item..url.length());
//2
 
//一つ目(0番目)の「item」ノードの二つ目(1番目)のノード名を取得
trace(xml.item[0].child(1).name());
//url
 
//「item」ノード内の「name」ノードの内容が「test1」の「url」ノードの内容を取得
trace(xml.item.(name == "test1").url);
//www.example1.com
 
//「item」ノード内の「id」属性が「2」の「url」ノードの内容を取得
trace(xml.item.(@id == 2).url)
//www.example2.com
 
//三つ目(2番目)の「item」ノードに「url」ノードの有無をブール値で取得
trace(xml.item[2].hasOwnProperty("url"));
//false