0

.hファイルを特定のXML形式に変換するC/C++ヘッダーファイルパーサーを作成しています。

私は次のように定義された構造を持っています:

struct struct1
{
   struct structchild1
   {  
      float child2;
   } child3;
   unsigned int child3;
};

上記の構造を次のように表現したいと思います。

<tag1= "struct1">
        <name>struct1</name>
        <input_type>byte</input_type>
        <method></method>
        <tag_ref = "structchild1">
            <name>child3</name>
            <tag2 = "child2">
            <name>child2<name>
            <size>4<size>
            </tag2>
        </tag_ref>
     <tag2= "child3">
          <name>child3</name>
          <len>4</len>
          <value> </value>
     </tag2>
</tag1>

私のアプローチ:2段階のプロセスを使用しています。最初にヘッダーファイルをgccXML形式に変換し、次にVisualStudio用のxerces-C++を使用して結果をXMLファイルに出力します。ネストされた構造体または共用体を除くすべて(列挙型、typedefなど)を正常に解析できます。somebpdyは、これを行う方法について私を助けてくれますか?ありがとう!

4

1 に答える 1

0

C++を使用しているため、これが役立つかどうかはわかりません.しかし、これを簡単に実行したい場合は、JavaでJDOMまたはJAXBパーサーを使用できます.JAXBマーシャラーはXMLを作成し、JAXBアンマーシャラーはXMLを解析します.JDOMparserを使用しましたCDATA セクションを含む XML を解析すると、見事に機能します。これが役立つことを願っています。この例を見てみたいと思うかもしれません。 http://www.mkyong.com/java/jaxb-hello-world-example/

于 2012-08-18T17:28:20.657 に答える