ソス@ソスソスXMLソスソスヌみ搾ソスソズにゑソス
|
ソスEC/C++
ソスEDelphi
ソスEVisual BasicソスソスソスSソスソス
ソス@(VB2-VB6ソスソス.NETソスソスソスp)
ソスEVisual Basic(VB2-VB6)
ソスEVisual Basic .NET
ソスEVisual C++
ソスEpapy's softwarelibrary
ソスツ具ソスソスソスVB.NET WindowsXP ProソスナゑソスソスB
XMLソスtソス@ソスCソスソスソスフ抵ソスソスgソスソスソスソスソスフようソスノなゑソスソストゑソスソスフゑソスヌゑソスソスソスニゑソスソストゑソスソスワゑソス
<Items>
<SampleClass>
<Number>123</Number>
<Message>ソスeソスXソスgソスナゑソスソスB</Message>
</SampleClass>
</Items>
1ソスiソスソスソスソスソスフとゑソスソスヘどぼゑソスvソスソスソスOソスソスソス‾ソスソスソスOソスソスソス黷ウソスソスフサソスソスソスvソスソスソスソス
ソスかソスソスワゑソスソスソスソスB
http://dobon.net/vb/dotnet/file/xmlserializer.html
2ソスiソスKソスノ子ソスmソス[ソスhソスソスソスナゑソスソストゑソスニゑソスソスフ読み包ソスソスソスソスかソスソスワゑソスソスソスB
ソスソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB
XMLソスソスヌみ搾ソスソズゑソスソス゚のクソスソスソスXソスヘゑソスソスソスソス骭セソスソスソストゑソスソス゚でゑソスソスソスソスB
ソス@ソス@Public Class Items
Public Class SampleClass
Public Number As Integer
Public Message As String
End Class
End Class
ソスソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB
Dim doc As New XmlDocument
Dim xmlPath = Me.MapPath("Test.xml")
doc.Load(xmlPath)
Dim NodeLists As XmlNodeList
Dim Node As XmlNode
NodeLists = doc.SelectNodes("//SampleClass[text()='SAmple'])
For Each Node In NodeLists
ソス@ソス@ソス@ソス@TextBox1.Text = TextBox1.Text & Node.InnerText
Next
<Items>
<SampleClass>Sample</SampleClass>
<TESTNODE>
<Number>123</Number>
<Message>ソスeソスXソスgソスナゑソスソスB</Message>
<TESTNODE>
</SampleClass>
</Items>
ソス¥ソス[ソスXソスソスXMLソスtソス@ソスCソスソスソスソスソスLソスノゑソスソス驍アソスニゑソスSampleClassソスフ値SampleソスソスソスソスソスソスフでゑソスソスソスソスAソスソスソスソス123ソスソスeソスXソスgソスナゑソスソスソスソスニゑソスワゑソスソスソスB
ソスqソスフ値ソスソスニゑソスソスソス@ソスナヒソスソスソスgソスナゑソスソスソスソスソスフでゑソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB
> ソスソスソスソス123ソスソスeソスXソスgソスナゑソスソスソスソスニゑソスワゑソスソスソスB
XPath ソスソスソスヘゑソスソスソスソスソスソスフようソスネので、SelectNodes ソスソスソスナ取得ソスソスソスソスニゑソスソスB
ソスソスソス驍「ソスヘ、ソスソスソスソスソス XMLNode ソスソス謫セソスソスソス驍アソスニまではでゑソスソストゑソスソスソス謔、ソスネので、
ソスソスソスソスソスソスソスソス ChildNodes, NextSibling ソスソスソスXソスナ親ソスqソスZソスソスmソス[ソスhソスソスHソスソスニゑソスソスB
SelectNodesソスナ取得ソスソスソスソスソスソス@ソスソスソスソスソスソストゑソスソスワゑソスソスB
XPathソスソスソスソスフようソスノ擾ソスソスソスソスソスソスソスソストみまゑソスソスソスソスB
//SampleClass[text()=Sample]../TESTNODE
ソスワゑソスソスソス()ソスナゑソスソスソスソスソスソスソス
(//SampleClass[text()=Sample])../TESTNODE
ソスニゑソスソスソストみゑソスソスソスナゑソスソスソスソスAソスgソス[ソスNソスソスソスソスソスソスソスソスソスナゑソスソスBソスニエソスソスソス[ソスソスソスナてゑソスソスワゑソスソスワゑソスソスB
XPathソスフ指ソスソスソスソス@ソスソスソスソスソスソスソスフでゑソスソス蛯、ソスソスソスB
ソスソスしソスソスソスソスソス閧「ソスソスソスワゑソス
XPathソスフ指ソスソスソス//child::SampleClass[text()='Sample']/parent::*
ソスニゑソスソスソスソスソスソス謔、ソスソスparentソスナ親ソスmソス[ソスhソスノゑソスソスソスソスソスソスソスソスソスソスソス
//child::SampleClass[text()='Sample']/parent::*/Childソスニゑソスソス驍アソスニゑソス
ソスqソスソスソスソスソスソス謔、ソスノなゑソスワゑソスソスソスソスB
ソスソスソス閧ェソスニゑソスソスソスソスソスソスソスソスワゑソスソスソスソスB
ソスソスソスソスフチソスFソスbソスNソスソスYソスソストまゑソスソスソスソスB
> ソス¥ソス[ソスXソスソスXMLソスtソス@ソスCソスソスソスソスソスLソスノゑソスソス驍アソスニゑソス
VB ソスRソス[ソスhソスソス XML ソスtソス@ソスCソスソスソスソスソスソス@ソス癆スソスネので、ソスソスソスソスナは難ソスソスソスソスネゑソスソスニ思ソスソスソスワゑソスソスソスB
ソスソスソスソスソスpソスフコソス[ソスhソスソスソスソスソスソスソスソスフでゑソスソスソスホ、ソスソスソスフ趣ソスソスロのコソス[ソスhソスソスソスソスフまま貼ソスソスtソスソスソストゑソスソスソスソスソスソスソスソスB
> //SampleClass[text()=Sample]../TESTNODE
> (//SampleClass[text()=Sample])../TESTNODE
ソスqソスソスソスソスソスA"Sampleソスニゑソスソスソスソスソスソスソスソスソス"ソスナはなゑソスソスA"Sampleソスvソスfソスmソス[ソスh" ソスフ指ソスソスノなゑソスソストゑソスソスソスフゑソス
ソスPソスネゑソスソスLソスソスソスニ思ソスソスソスワゑソスソスソスソスAソスソスソスソスノゑソスソストゑソスAソスソスソスソスソスソスmソス[ソスhソスeソスXソスgソスフ記ソスqソスソスソスsソスソスソスナゑソスソスB
(ソスソスソスハ指ソスソスヘ論ソスOソスニゑソスソスト…)
ソスワゑソスソスAソスソスソスソスソスフパソスXソスヘ、ソスヌのようソスネノソス[ソスhソスソス謫セソスソスソスソスレ的ソスナ擾ソスソスソスソス黷スソスソスソスネのでゑソスソス蛯、ソスソス?
ソスRソス[ソスhソスフ意図ソスソスソスかソスソスホ、ソスソスヨコソス[ソスhソスソスソスソスソスソスソスフでゑソスソスソスソスAソスソスソスソスソスソスAソスソスソスノなゑソス XML ソスfソス[ソス^ソスソスソスソス
ソスソスソスソスソスソスソスソスソスソスワゑソスソスソスナゑソスソスソスソスフで、ソスソスフ暦ソスソスソスソスソスソスノゑソスソスソスソスナゑソスソスフゑソスソスAソス皷橸ソスA
ソス@//SampleClass[text()='Sample']/../TESTNODE
ソス@//TESTNODE[../SampleClass/text()='SampleClass']
ソス@//TESTNODE[../SampleClass='SampleClass']
ソスニゑソスソスソスソスソスソス¥ソスソスソスネゑソスホ包ソスソス@ソス癆スソスノはなゑソスワゑソスソスソスBソスソスソスソスソスソスフ意図ソスノゑソスソスソスソストゑソスソス驍ゥソスヘ不ソスソスソスナゑソスソスソスソスB
ソスナ。ソスソス{ソスIソスノは「ソスソス::ソスmソス[ソスhソスeソスXソスg[ソスqソスソス]ソスvソスソスXソスソスソスbソスVソスソスソスナ具ソスリゑソスソストゑソスソスソスソスソス OK ソスナゑソスソスB
(ソスpソスソスソスハで囲まゑソスソスqソスソスフ包ソスソスソスソスヘ、ソスソスソスナに御存ソスmソスナゑソスソスソスソス)
ソスソスソスフとゑソスソスAソスuソスソス::ソスvソスヘ省暦ソスソス`ソスソスソスgソスソスソス骼厄ソスソスソスソスソスソスソスA
ソス@child::ソス@ソスソスソス@ソスuソスvソスLソスqソスソスソスネゑソスソスB
ソス@descendant::ソス@ソスソスソス@ソスu//ソスvソスXソスソスソスbソスVソスソス2ソスツ。
ソス@self::ソス@ソスソスソス@ソスu.ソスvソスhソスbソスgソスB
ソス@parent::ソス@ソスソスソス@ソスu..ソスvソスhソスbソスg2ソスツ。
ソスネどと擾ソスソスソスソスソスソスフゑソスソスソスハ的ソスナゑソスソスBソスソスソスソスソスソスソスAソスソスソスノゑソスソスソストは省暦ソスソス`ソスソスソスpソスモゑソスソスソストゑソスソスネゑソスソスソスフゑソス
ソスソスソスソスワゑソスソスフで、ソスナゑソスソスソスホ撰ソスソスソスソスソスソスLソスqソスソスソス@ソスソスwソスソスナゑソスソスソスソス黷スソスソスソスソスソスソスしソスソスソスソスソスニ。
ソスニりあソスソスソスソスソスA(2 ソスソスレゑソス XML ソスヘ不ソスソスソスネのゑソス)ソスヘ、ソスナ擾ソスソスソス XML ソスfソス[ソス^ソスソスソスニゑソスソスト使ソスせソストゑソス轤、ソスニ、
ソスPソスノ「ソスeソスXソスgソスナゑソスソスBソスvソスニゑソスソスソスソスソスソスソスソスソス得るたソス゚にゑソスAソスソスソスいソスソスネ構ソスソスソスソスgソスソスソスソスソスソスソスナゑソスソスワゑソスソスB
ソスソスソスニゑソスソスホ、[ソスソスソスソスソスmソス[ソスh]-[Itemsソスvソスfソスmソス[ソスh]-[SampleClassソスvソスfソスmソス[ソスh]-[Messageソスvソスfソスmソス[ソスh]ソスソス
ソスeソスLソスXソスgソスmソス[ソスhソスフゑソスソスソスソスAソスナ擾ソスソスノ鯉ソスソスツゑソスソスソスソスソスソスソスソス得ゑソスニ考ソスソスソスソスホ、
ソス@S = doc.SelectSingleNode("Items/SampleClass/Message/text()").Value
ソス@S = doc.SelectSingleNode("Items/SampleClass/Message").InnerText
ソス@S = doc.SelectNodes("Items/SampleClass/Message/text()")(0).Value
ソス@S = doc.SelectNodes("Items/SampleClass/Message")(0).InnerText
ソスニゑソスソスソスソスソスソス¥ソスソスソスソスgソスソスソスソスソスニゑソスソスナゑソスソスワゑソスソスB
ソスソスソス驍「ソスヘ子ソスソスソスmソス[ソスhソスフゑソスソスソスソスAソスナ擾ソスソスソスMessageソスvソスfソスmソス[ソスhソスソスソスソスoソスソスソスニ考ソスソスソスソスホ、
ソス@S = doc.SelectSingleNode("descendant::Message[1]/text()").Value
ソス@S = doc.SelectSingleNode("descendant::Message/text()").Value
ソス@S = doc.SelectSingleNode("descendant::Message").InnerText
ソス@S = doc.SelectSingleNode("//Message/text()").Value
ソス@S = doc.SelectSingleNode("//Message").InnerText
ソスネどとゑソスソスソスソスソスワゑソスソスB
ソスソスソス驍「ソスヘ、Number ソスvソスfソスソス ID ソスフようソスノ茨ソスソスソスソスAソスuソスソスソスl 123 ソスノ対会ソスソスソスソス驛ソスbソスZソス[ソスWソスソス謫セソスソスソスソスvソスニ考ソスソスソスソスネゑソスA
ソス@S = doc.SelectSingleNode("descendant::Number[number(self::node())=123]/parent::SampleClass/child::Message/child::text()").Value
ソス@S = doc.SelectSingleNode("descendant::Number[number(self::node())=123]/parent::SampleClass/Message/text()").Value
ソス@S = doc.SelectSingleNode("//Number[number(.)=123]/../Message/text()").Value
ソス@S = doc.SelectSingleNode("//Number[number()=123]/../Message/text()").Value
ソス@S = doc.SelectSingleNode("//Number[text()='123']/../Message/text()").Value
ソス@S = doc.SelectSingleNode("//Number[.='123']/ancestor::node()//Message/text()").Value
ソス@S = doc.SelectSingleNode("//Number[.='123']/ancestor::node()//Message").InnerText
ソス@S = doc.SelectSingleNode("//Number[number(.)=123]/../Message/text()").Value
ソス@S = doc.SelectSingleNode("descendant::Message[parent::node()/child::Number/child::text()='123']/text()").Value
ソス@S = doc.SelectSingleNode("descendant::Message[parent::node()/child::Number/text()='123']/text()").Value
ソス@S = doc.SelectSingleNode("descendant::Message[parent::node()/descendant::text()='123']/text()").Value
ソス@S = doc.SelectSingleNode("//Message[../descendant::*='123']/text()").Value
ソス@S = doc.SelectSingleNode("//Message[../Number/text()='123']/text()").Value
ソス@S = doc.SelectSingleNode("//Message[../Number/text()=123]/text()").Value
ソス@S = doc.SelectSingleNode("//Message[../Number='123']").InnerText
ソスネどとゑソスソスソスソスソスワゑソスソスB
'XMLソスtソス@ソスCソスソスソスナゑソス
<?xml version="1.0" encoding="utf-8" ?>
<RootEle>
<Ele>
<Node1>TestNode1</Node1>
<Node2>
<Child1>TestNode1_Child1</Child1>
<Child2>TestNode1_Child2</Child2>
</Node2>
</Ele>
<Ele>
<Node1>TestNode1</Node1>
<Node2>
<Child1>TestNode1_Child1</Child1>
<Child2>TestNode1_Child2</Child2>
</Node2>
</Ele>
</RootEle>
'ソス¥ソス[ソスXソスtソス@ソスCソスソス
Dim StrChild1 As String
Dim StrChild2 As String
'XPathソスソスソスフ托ソスソス
Dim SelectNodesXPath As String
Dim doc As XmlDocument = New XmlDocument
ソス@ソス@ソス@ソス@'XmlPathソスノはフソス@ソスCソスソスソスフ撰ソスホパソスXソスソスソスソスソスソスソストゑソス
doc.Load(xmlPath)
'ソスmソス[ソスhソスフ抵ソスソスソス"ソスソスソスoソストゑソスソスソスソスニゑソスソスフ対搾ソス
SelectNodesXPath = "//child::Ele/child::Node1[text()='TestNode1']/parent::*/child::Node2/child::*"
'Node2ソスネ会ソスソスソスmソス[ソスhソスソスソスXソスgソスノ格ソス[
Dim NodeList As XmlNodeList = doc.SelectNodes(SelectNodesXPath)
'ソスqソスmソス[ソスhソスソスソスソスフゑソスソスソスソスソス
If NodeList.Item(0).HasChildNodes Then
'ソスソスソスフ包ソスソスソスソスヘ要ソスfソスソスソスソスソスソスソスソス¥ソスソスナゑソスソスB
For Each Node As XmlNode In NodeList
Select Case Node.LocalName
Case "Child1"
'ソスvソスfソスソスフテソスLソスXソスgソスソスソスソスソスソス
StrChild1 = Node.InnerText
Case "Child2"
'ソスvソスfソスソスフテソスLソスXソスgソスソスソスソスソスソス
StrChild2 = Node.InnerText
End Select
Next
Else
'ソスqソスmソス[ソスhソスソスソスソスソスンゑソスソスネゑソス
End If
StrChild1 ,StrChild2ソスソス Node1ソスソスvソスfソスフ値ソスソスソスソスソスソスTソスソスソスvソスソスソスナゑソスソスB
ソスソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB
ソスソスヤ最擾ソスソスソスNode2ソスフ子ソスvソスfChild1ソスAChild2ソスソスソスソスソスソスTソスソスソスvソスソスソスナゑソスソスソスソスB
ソスソスソスEソスフ会ソスソスハ弁士ソスソスソスありがソスニゑソスソスソスソスソスソスソスソスワゑソスソスB
XPathソスフ撰ソスソスソスソスネ包ソスソス@ソスソスmソスソスネゑソスソスソスソスソスソスフでとてゑソスラ具ソスソスノなゑソスワゑソスソスソスソスB
ソスソスソスソスソスネゑソスソスソスヤでの載ゑソスソストゑソスソスワゑソスソスAソスヤ信ソスソスソスソスソスソスソスソスソスソスフに托ソスマゑソスソス關費ソスソスソスソスソスソスソスソスソスワゑソスソスソスソスB
ソスソスソスxソスヘ難ソスソスソスソスソスヤのゑソスフゑソスソスソスフまま貼ソスソスtソスソスソストみまゑソスソスソスソスB
ソスソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB
ソスソスソスEソスフ会ソスソスハ弁士ソスソスソスありがソスニゑソスソスソスソスソスソスソスソスワゑソスソスB
XPathソスフ撰ソスソスソスソスネ包ソスソス@ソスソスmソスソスネゑソスソスソスソスソスソスフでとてゑソスラ具ソスソスノなゑソスワゑソスソスソスソスB
ソスソスソスソスソスネゑソスソスソスヤでの載ゑソスソストゑソスソスワゑソスソスAソスヤ信ソスソスソスソスソスソスソスソスソスソスフに托ソスマゑソスソス關費ソスソスソスソスソスソスソスソスソスワゑソスソスソスソスB
ソスソスソスxソスヘ難ソスソスソスソスソスヤのゑソスフゑソスソスソスフまま貼ソスソスtソスソスソストみまゑソスソスソスソスB
ソスソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB
ソスソスソスxソスヘ、ソスフ心ソスネ趣ソスソスソスソスeソスソスソスソスソスソスソストゑソスソスソス謔、ソスネ…ソスB
ソスTソスソスソスvソスソスソスソスソスソスsソスソスソスソスニ、ソスuDim NodeList As XmlNodeListソスvソスノ、
ソス@<Child1>TestNode1_Child1</Child1>
ソス@<Child2>TestNode1_Child2</Child2>
ソス@<Child1>TestNode1_Child1</Child1>
ソス@<Child2>TestNode1_Child2</Child2>
ソスソス 4 ソスツの要ソスfソスmソス[ソスhソスソスソスiソス[ソスソスソスソスソスナゑソスソスうソスニゑソスソスソスソスソスソスヘ包ソスソスソスソスソスワゑソスソスソスソスA
ソスソスソスソスノつゑソスソスト、ソスソスソスソス答ゑソスソスソスホ良ゑソスソスナゑソスソス蛯、ソスソスソスB
> ソスソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB
ソスソスソスソスAソスソスしソスソスソスソスソスト…ソスcソスソスソスソス? (^^;
> 'ソスmソス[ソスhソスフ抵ソスソスソス"ソスソスソスoソストゑソスソスソスソスニゑソスソスフ対搾ソス
ソスソスソスフコソスソスソスソスソスgソスフ意厄ソスソスソスソスソスソスソスソスソスネゑソスソスソスソスソスソスフでゑソスソスソスソスAソスヌゑソスソスソスソスソスソスモ厄ソスソスナゑソスソス蛯、ソスソス?
> SelectNodesXPath = "//child::Ele/child::Node1[text()='TestNode1']/parent::*/child::Node2/child::*"
ソスソスソスフ表ソスソスソスニゑソスソストは、
ソス@SelectNodesXPath = "//Ele/Node2[preceding-sibling::Node1='TestNode1']/node()"
ソス@SelectNodesXPath = "//Node2[../Node1='TestNode1']/node()"
ソスネどゑソスgソスソスソスワゑソスソスヒ。
ソスヤ信ソスソスソスソスソスソスソスソスソスネゑソスソストゑソスソスソスソスワゑソスソスソスB
ソスソスソスEソスフ会ソスソスハ弁士ソスソスソスがゑソスソスいソス教ソスソスソストゑソスソスソスソスソスソスソスソスト奇ソスソスソスソスソスソスワゑソスソスソスソスB
ソスソスソス@ソスヘ変なのにゑソスソスワゑソスソスワ難ソスソスソスソストゑソスツ能ソスソスソスソスソスソスソスソスソスソスフで、ソス¥ソス[ソスXソスソスソスソストゑソスソスソスソスソスソスソスソスソスニゑソスソス閧ェソスソスソスソスソスナゑソスソスBソスソスソス閧「ソスソスソスワゑソスソスB
ソスフつゑソスソスナゑソスソスソスソスB
ソスOソスソスフ包ソスソスソスソスソスソスソスソスソスソストるせソスソスソスナ読みにゑソスソスソスソスソスソスヘになゑソスソストゑソスソスソスソスワゑソスソスソスB
ソスワゑソスソスソスソスソスソスソスソスソスワゑソスソスソスソスソスAソスソスソス竄「ソスソスソスソスソスワゑソスソスフゑソス
ソスソスソス黷ゥソスソスソスソスしソスソスソスソスソス閧「ソスソスソスワゑソスソスB