1

私の問題は次のとおりです。

XML ファイルを開きます。

<?xml version="1.0" encoding="UTF-8"?>
<A>
  <C>A</C>
  <D>212</D>
  <E>Test1 & Test2</E>
</A>

次のような Content を設定することはできません。

xmlFile->open(QIODevice::ReadOnly|QIODevice::Text;

 QDomDocument doc("mydocument");
 if (!doc.setContent(xmlFile, &msg, &line, &col)) {
       qDebug()-><<"Failure in Column: "<<(QString)col<<"  Line: "+(QString)line;
       return false;
   }

XML ファイルから & を削除すると、コンテンツを設定できます。

なぜ?

4

1 に答える 1

2

これは無効な XML です。& をエンティティに置き換える必要があります&amp; 。次に例を示します。

<?xml version="1.0" encoding="UTF-8"?>
<A>
<C>A</C>
<D>212</D>
<E>Test1 &amp; Test2</E>
</A>

オンライン検証サービスで XML を検証できます

XML 定義済みエンティティのリスト。

于 2013-01-08T09:16:17.307 に答える