#define WIN32_LEAN_AND_MEAN
https://github.com/leethomason/tinyxml2/issues/37
これで取得できる
XMLElement* root = xml.FirstChildElement( データ名 );
「dir1/data1/」に対してコレはダメ(親ノードをすっ飛ばしてる)
XMLElement* root = xml.FirstChildElement( "data1" );
コレもダメ(パスは繋げない)
XMLElement* root = xml.FirstChildElement( "dir1/data1" );
これはOK
XMLElement* dir1 = xml.FirstChildElement( "dir1" );
これが正しい
XMLElement* data1 = dir1.FirstChildElement( "data1" );
基本的に全てテキストで得られる。データがないもの(ディレクトリなど)はNULLが返る
const char* txt = data1->GetText();
例のXML
<food> <fruits> <data>りんご<data> </fruits> <fruits> <data>めろん<data> <fruits> </food>
プログラム
XMLElement* food = xml.FirstChildElement( "food" ); XMLElement* fruits = food->FirstChildElement( "fruits" ); fruits->NextSiblingElement( "fruits" ); gxLib::DebugLog( "%s" , fruits->GetText() );
結果
めろん
こうする。「フルーツ」が自分自身のポインタをつかって次の「フルーツ」を探すイメージ