私はC++とXerces-cを使用してXMLパーサーに取り組んできましたが、理解できない問題が発生したようです(大きな問題ではありません。回避策はありますが、「ハックしたくない」 「それを回避する私の方法:))
私はこのようなXMLファイルを持っています
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Config>
<Person>
<Title>Mr.</Title>
<Forename>Stephen</Forename>
<Surname>Cassidy</Surname>
<Job>
<Title>Position1</Title>
<Position>Worker</Position>
<Salary>£6.40</Salary>
</Job>
<Job>
<Title>NewJob</Title>
<Position>PositionWorker1</Position>
<Position>AnotherPosition</Position>
<Salary>£12,000</Salary>
</Job>
</Person>
私がやろうとしているのは、ノードが他の子ノード<Person>
(ノードやノードなど)の単なる「プレースホルダー」である<Job>
かどうかを判断し、処理を試みるのではなく、子ノードをチェックすることです。
この理由は、ノード名(Titleなど)と値(NewJobなど)、および子エントリのリストを格納するクラス内にノード値を格納しているため、Jobはノードエントリ、次にTitle、役職と給与はすべて、ジョブの「子」エントリになります。ただし、JobにPositionのエントリがすでにあるかどうかも確認できるようにしたいので、新しいエントリを作成してJobも追加するのではなく、Positionの値を既存のPositionエントリに追加するだけです...誰にでも意味がある:)
どんな助けでも大歓迎です、私は誰かがそれをコーディングすることを期待していません、または私のためにいくつかのヒントやポインタだけです:)!