1

次のように、既存のノード/親に要素を追加しようとしています。

<?xml version="1.0" encoding="UTF-8" standalone="true"?>
   <BitComet Version="1.0">
      <MyShares>
         <bt title="Sound of Music" save_path="C:\Downloads|Sound of Music" task_finished="true" category="software" size="7126369" hash="31e0ded5b561ed698c151e72d5f20d9b75f03b12"/>
      </MyShares>
   </BitComet>

--

TiXmlDocument xml(pf);
if(!xml.LoadFile()) return;

TiXmlElement* root = xml.FirstChildElement("BitComet");

TiXmlElement* parent = xml.FirstChildElement("MyShares")

TiXmlElement* elem = new TiXmlElement( "bt" );
elem->SetAttribute("title", "TiTlE");
elem->SetAttribute("save_path", "C:\\Downloads|Test");
elem->SetAttribute("task_finished", "true");
elem->SetAttribute("category", "software");
elem->SetAttribute("size", 7126369);
elem->SetAttribute("hash", "hash_here");
xml.LinkEndChild( elem );

xml.LinkEndChild( parent );

xml.LinkEndChild( root );

xml.SaveFile(pf);

何が起こっているのかわかりませんが、コードのそのセクションを実行するとクラッシュします。

4

1 に答える 1

1

<MyShares>タグにアクセスするための呼び出しは

TiXmlElement* parent = root -> FirstChildElement("MyShares");

また、LinkEndChild必要な呼び出しは次のとおりです。

parent->LinkEndChild( elem );
于 2012-05-06T19:29:29.577 に答える