Basicfarmer
asked on
Working with an XML document in VB6
Experts, i need to get some information from an xml file. From the sample below i need to get the <Text> of all field types of "Text" where the name of the message is "Default".
I have used the code below to get the names of the messages in the file. but i dont know where to go from here.
Dim xdoc As MSXML2.DOMDocument
Set xdoc = New MSXML2.DOMDocument
xdoc.validateOnParse = False
Dim message As IXMLDOMElement
If xdoc.Load("C:\test.xml") Then
' The document loaded successfully.
' Now do something intersting.
'DisplayNode xdoc.childNodes, 0
For Each message In xdoc.selectNodes("/Message s/Message/ Name")
Debug.Print message.Text
Next
End If
<Messages>
<Message>
<Language>English</Languag e>
<Name>DEFAULT</Name>
<Code>Undefined</Code>
<FontSize>7</FontSize>
<Delay>5000</Delay>
<Bold>0</Bold>
<Width>200</Width>
<Gap>0</Gap>
<Height>200</Height>
<Pixel>16</Pixel>
<Orientation>Upside Up</Orientation>
<Alternate0>No</Alternate0 >
<Alternate1>No</Alternate1 >
<Alternate7>No</Alternate7 >
<RepeatPitch>0</RepeatPitc h>
<RepeatPrint>0</RepeatPrin t>
<AutoPrintPitch>0</AutoPri ntPitch>
<LanguageShifts>English</L anguageShi fts>
<ExpirationRolldown>Off</E xpirationR olldown>
<ExpirationDate1>
<Day>30</Day>
<Week>0</Week>
<Month>0</Month>
<Year>0</Year>
</ExpirationDate1>
<ExpirationDate2>
<Day>60</Day>
<Week>0</Week>
<Month>0</Month>
<Year>0</Year>
</ExpirationDate2>
<TimeCreated>
<Date>
<Year>2013</Year>
<Month>1</Month>
<Day>24</Day>
</Date>
<Time>
<Hour>11</Hour>
<Minute>19</Minute>
</Time>
</TimeCreated>
<CounterDate>
<Date>
<Year>2013</Year>
<Month>1</Month>
<Day>24</Day>
</Date>
</CounterDate>
<Shift>
<Text>A</Text>
<Time>
<Hour>8</Hour>
<Minute>0</Minute>
</Time>
</Shift>
<Counter1>
<Start>0</Start>
<Upper>100000</Upper>
<Lower>0</Lower>
<Increment>1</Increment>
<Repeat>0</Repeat>
<RepeatStart>0</RepeatStar t>
<Digits>6</Digits>
<LeadZero>Yes</LeadZero>
<Value>0</Value>
<WrapAround>Yes</WrapAroun d>
</Counter1>
<Counter2>
<Start>0</Start>
<Upper>100000</Upper>
<Lower>0</Lower>
<Increment>1</Increment>
<Repeat>0</Repeat>
<RepeatStart>0</RepeatStar t>
<Digits>6</Digits>
<LeadZero>Yes</LeadZero>
<Value>0</Value>
<WrapAround>Yes</WrapAroun d>
</Counter2>
<Field>
<Type>Text</Type>
<Language>English</Languag e>
<Text>CITRONIX CIJ</Text>
<FontSize>16</FontSize>
<FontName>30021600</FontNa me>
<Bold>0</Bold>
<Gap>1</Gap>
<X>0</X>
<Y>0</Y>
<Orientation>Upside Up</Orientation>
</Field>
<Field>
<Type>Text</Type>
<Language>English</Languag e>
<Text>OCTOBER</Text>
<FontSize>16</FontSize>
<FontName>30021600</FontNa me>
<Bold>0</Bold>
<Gap>1</Gap>
<X>0</X>
<Y>0</Y>
<Orientation>Upside Up</Orientation>
</Field>
<Field>
<Type>AutoCode</Type>
<Language>English</Languag e>
<Format>MMDDYY</Format>
<DateDelimiter>/</DateDeli miter>
<FontSize>7</FontSize>
<FontName>30020700</FontNa me>
<Bold>0</Bold>
<Gap>1</Gap>
<X>160</X>
<Y>0</Y>
<Orientation>Upside Up</Orientation>
</Field>
<Field>
<Type>AutoCode</Type>
<Language>English</Languag e>
<Format>HHMMSS</Format>
<TimeDelimiter>:</TimeDeli miter>
<FontSize>7</FontSize>
<FontName>30020700</FontNa me>
<Bold>0</Bold>
<Gap>1</Gap>
<X>160</X>
<Y>9</Y>
<Orientation>Upside Up</Orientation>
</Field>
</Message>
</Messages>
I have used the code below to get the names of the messages in the file. but i dont know where to go from here.
Dim xdoc As MSXML2.DOMDocument
Set xdoc = New MSXML2.DOMDocument
xdoc.validateOnParse = False
Dim message As IXMLDOMElement
If xdoc.Load("C:\test.xml") Then
' The document loaded successfully.
' Now do something intersting.
'DisplayNode xdoc.childNodes, 0
For Each message In xdoc.selectNodes("/Message
Debug.Print message.Text
Next
End If
<Messages>
<Message>
<Language>English</Languag
<Name>DEFAULT</Name>
<Code>Undefined</Code>
<FontSize>7</FontSize>
<Delay>5000</Delay>
<Bold>0</Bold>
<Width>200</Width>
<Gap>0</Gap>
<Height>200</Height>
<Pixel>16</Pixel>
<Orientation>Upside Up</Orientation>
<Alternate0>No</Alternate0
<Alternate1>No</Alternate1
<Alternate7>No</Alternate7
<RepeatPitch>0</RepeatPitc
<RepeatPrint>0</RepeatPrin
<AutoPrintPitch>0</AutoPri
<LanguageShifts>English</L
<ExpirationRolldown>Off</E
<ExpirationDate1>
<Day>30</Day>
<Week>0</Week>
<Month>0</Month>
<Year>0</Year>
</ExpirationDate1>
<ExpirationDate2>
<Day>60</Day>
<Week>0</Week>
<Month>0</Month>
<Year>0</Year>
</ExpirationDate2>
<TimeCreated>
<Date>
<Year>2013</Year>
<Month>1</Month>
<Day>24</Day>
</Date>
<Time>
<Hour>11</Hour>
<Minute>19</Minute>
</Time>
</TimeCreated>
<CounterDate>
<Date>
<Year>2013</Year>
<Month>1</Month>
<Day>24</Day>
</Date>
</CounterDate>
<Shift>
<Text>A</Text>
<Time>
<Hour>8</Hour>
<Minute>0</Minute>
</Time>
</Shift>
<Counter1>
<Start>0</Start>
<Upper>100000</Upper>
<Lower>0</Lower>
<Increment>1</Increment>
<Repeat>0</Repeat>
<RepeatStart>0</RepeatStar
<Digits>6</Digits>
<LeadZero>Yes</LeadZero>
<Value>0</Value>
<WrapAround>Yes</WrapAroun
</Counter1>
<Counter2>
<Start>0</Start>
<Upper>100000</Upper>
<Lower>0</Lower>
<Increment>1</Increment>
<Repeat>0</Repeat>
<RepeatStart>0</RepeatStar
<Digits>6</Digits>
<LeadZero>Yes</LeadZero>
<Value>0</Value>
<WrapAround>Yes</WrapAroun
</Counter2>
<Field>
<Type>Text</Type>
<Language>English</Languag
<Text>CITRONIX CIJ</Text>
<FontSize>16</FontSize>
<FontName>30021600</FontNa
<Bold>0</Bold>
<Gap>1</Gap>
<X>0</X>
<Y>0</Y>
<Orientation>Upside Up</Orientation>
</Field>
<Field>
<Type>Text</Type>
<Language>English</Languag
<Text>OCTOBER</Text>
<FontSize>16</FontSize>
<FontName>30021600</FontNa
<Bold>0</Bold>
<Gap>1</Gap>
<X>0</X>
<Y>0</Y>
<Orientation>Upside Up</Orientation>
</Field>
<Field>
<Type>AutoCode</Type>
<Language>English</Languag
<Format>MMDDYY</Format>
<DateDelimiter>/</DateDeli
<FontSize>7</FontSize>
<FontName>30020700</FontNa
<Bold>0</Bold>
<Gap>1</Gap>
<X>160</X>
<Y>0</Y>
<Orientation>Upside Up</Orientation>
</Field>
<Field>
<Type>AutoCode</Type>
<Language>English</Languag
<Format>HHMMSS</Format>
<TimeDelimiter>:</TimeDeli
<FontSize>7</FontSize>
<FontName>30020700</FontNa
<Bold>0</Bold>
<Gap>1</Gap>
<X>160</X>
<Y>9</Y>
<Orientation>Upside Up</Orientation>
</Field>
</Message>
</Messages>
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thanks...