cocos2d-x 3.2 XML讀取第二章(優化)
阿新 • • 發佈:2019-01-23
在第一章分別清晰的列出每一步的步驟,但這樣的程式碼冗餘,但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;