qt-2.2.1 xml parsing

deodiaus

Usenet Archive
Joined
Nov 25, 2003
Messages
7
Reaction score
0
I am trying to read this xml
---------------- begin xml ----------
<Aqrun2dCapDialog>
<AqRSDialog>
<userprefixfield></userprefixfield>
<m_rsName>RunScripts.ksh</m_rsName>
</AqRSDialog>
<singlevalfield>0.1</singlevalfield>
<rangefromvalfield>0.1</rangefromvalfield>
<rangetovalfield></rangetovalfield>
<varlist><varitem0>M1 Total thickness From: 0.135 To: 0.139 Step:
0.001</varitem0>
<varitem1>M1 Signal line width 0.1,.2</varitem1>
</varlist>
</Aqrun2dCapDialog>
------------- end xml -----------------
but having a problem in that the code seems to not treat <varitem0> <varitem0> independently, as 2 separate fields, rather as 1 entitiy, i.e. the text reads

tagName={varitem} tagText={M1 Total thickness From: 0.135 To: 0.139
Step:
0.001M1 Signal line width 0.1,.2}

rather than the desired output

tagName={varitem0} tagText={M1 Total thickness From: 0.135 To: 0.139
Step:
0.001}
tagName={varitem1} tagText={M1 Signal line width 0.1,.2}

using the sample QT code from www.trolltech.com 's help

if (AqmainWindow::m_pDoc) delete AqmainWindow::m_pDoc;
AqmainWindow::m_pDoc = new QDomDocument( "mydocument" ); QFile f( filenameAqs.latin1 ); if ( !f.open( IO_ReadOnly ) ) return; if ( !AqmainWindow::m_pDoc->setContent( &f ) ) { f.close; return; } f.close; QDomElement docElem = AqmainWindow::m_pDoc->documentElement; if( !docElem.isNull ) { // the node was really an element. #ifdef _DEBUG cout <<" documentElementName={" << docElem.tagName << "}" << endl; #endif//_DEBUG } QDomNode n = docElem.firstChild; while( !n.isNull ) { QDomElement e = n.toElement; if( !e.isNull ) { // the node was really an element. #ifdef _DEBUG cout <<" tagName={" << e.tagName << "} tagText={" << e.text.latin1<< "}" << endl; #endif//_DEBUG if (e.tagName == "Aqrun2dCapDialog" ) {
Aqrun2dCapDialog::m_bSettingsAqsExist = true;

}
} n = n.nextSibling;
}
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
548,208
Messages
3,104,799
Members
249,594
Latest member
henrywalsh

Latest Threads

Top