TinyXml 在iPhone下的解析

要解析的xml源文件

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<colour>
    <header>12345</header>
    <item type="abcd">
        <text value="00000000"/>
    </item>           
</colour>



下面开始解析...看源码...这个最直接了哈...

NSString *strXml = [ NSString stringWithContentsOfFile:@"/mtctest.xml" encoding:NSUTF8StringEncoding error:nil];
    const char* chXML = [strXml UTF8String];
    TiXmlDocument* xmlDocument = new TiXmlDocument;
    xmlDocument->Parse(chXML);
   
   
    //DECLARATION
    TiXmlNode* pXmlFirst = xmlDocument->FirstChild();
    TiXmlDeclaration* pXmlDec = pXmlFirst->ToDeclaration();   
    if (NULL != pXmlDec)   
    {   
        const char* strVersion = pXmlDec->Version(); 
        const char* strEncoding = pXmlDec->Encoding();
        const char* strStandalone = pXmlDec->Standalone();
        NSLog(@"DECLARATION======%s,%s,%s",strVersion,strEncoding,strStandalone);
    }  
   
    //COLOUR
    TiXmlElement* colourElement = xmlDocument->RootElement();
    const char* colourValue = colourElement->Value();
    NSLog(@"COLOUR======%s",colourValue);
   
    //HEADER
    TiXmlElement *headerElement = colourElement->FirstChildElement();
    const char* headerValue = headerElement->Value();
    const char* headerText = headerElement->GetText();
    NSLog(@"HEADER======%s,%s",headerValue,headerText);
   
    //ITEM
    TiXmlElement *itemElement = headerElement->NextSiblingElement();
    const char* itemValue1 = itemElement->Value();
    TiXmlAttribute* itemAttribute = itemElement->FirstAttribute();   
    const char* itemName = itemAttribute->Name();
    const char* itemValue = itemAttribute->Value();
    NSLog(@"ITEM======%s,%s,%s",itemValue1,itemName,itemValue);
   
    //TEXT
    TiXmlElement *textElement = itemElement->FirstChildElement();
    const char* textValue1 = textElement->Value();
    TiXmlAttribute* textAttribute = textElement->FirstAttribute();   
    const char* textName = textAttribute->Name();
    const char* textValue = textAttribute->Value();
    NSLog(@"TEXT======%s,%s,%s",textValue1,textName,textValue);

 

 

好.下面看控制台的输出结果

 

 

2010-07-09 15:55:25.369 MyXmlTest[8227:207] DECLARATION======1.0,UTF-8,yes
2010-07-09 15:55:25.371 MyXmlTest[8227:207] COLOUR======colour
2010-07-09 15:55:25.372 MyXmlTest[8227:207] HEADER======header,12345
2010-07-09 15:55:25.372 MyXmlTest[8227:207] ITEM======item,type,abcd
2010-07-09 15:55:25.373 MyXmlTest[8227:207] TEXT======text,value,00000000

 

 

 

怎么样...够简单的吧...想要什么直接拿就行了...

 

TinyXml下载地址: http://sourceforge.net/projects/tinyxml/

TinyXml官网:http://www.grinninglizard.com/tinyxml/index.html

 


你可能感兴趣的:(TinyXml 在iPhone下的解析)