cocos2d-x 3.2 XML读取第二章(优化)

在第一章分别清晰的列出每一步的步骤,但这样的代码冗余,但XML多的时候,更是写了N行代码,进行重构。

详细:在init()中

tinyxml2::XMLDocument* homework	=	new tinyxml2::XMLDocument();
	homework->LoadFile("homework.xml");

	XMLElement* rootElement = homework->RootElement();  // Class  

	XMLElement* studentsElement = rootElement->FirstChildElement();  // Students  
	XMLElement* studentElement = studentsElement->FirstChildElement(); // student  

	while (studentElement) {  
		const XMLAttribute* attributeOfStudent = studentElement->FirstAttribute();  //获得student的name属性  
		while ( attributeOfStudent ) {  

			log("%s : %s",attributeOfStudent->Name(),attributeOfStudent->Value());  

			attributeOfStudent = attributeOfStudent->Next();  
		}  
		XMLElement* phoneElement = studentElement->FirstChildElement();//获得student的phone元素  

		log("phone : %s",phoneElement->GetText());  

		
		XMLElement* addressElement = phoneElement->NextSiblingElement();  

		log("address : %s",addressElement->GetText());  
		
		studentElement = studentElement->NextSiblingElement();  
	}  
	delete homework;  


猜你喜欢

转载自blog.csdn.net/yanghaojian/article/details/38299909
今日推荐