下記のウェブサイトを参考にした。
Free C or C++ XML Parser Libraries
libxml
libxml は、XML ドキュメントを解析するためのC言語のソフトウェアライブラリです。
Gnome で開発されている。
GNU や POSIX な環境では標準的なライブラリです。
MIT ライセンス。
下記のウェブサイトにチュートリアルとサンプルコードがある。
低レベルAPIであり、読み解くのに手間がかかる。
xmlsoft : Libxml2 set of examples
さくっと試したい人向けに、
XMLの要素名と値を表示するサンプルコードを github に公開した。
https://github.com/ohwada/MAC_cpp_Samples/tree/master/libxml/xml_parser
expat
Expatは、C言語で記述されたストリーム指向のXML1.0パーサーライブラリです。
MIT ライセンス。
下記のウェブサイトで使い方が紹介されている。
qiita : C言語用XMLパーサ「Expat」でXMLドキュメントを読み込む
libxml ++
libxml の C++ バインディングです。
LGPL ライセンス。
下記のウェブサイトにサンプルコードがある。
素の libxml よりは読みやすい。
TinyXml
TinyXMLは、 C++言語用の小さくてシンプルなオペレーティングシステムに依存しない XML パーサーです。
zlib ライセンス。
下記のウェブサイトにチュートリアルとサンプルコードがある。
PugiXML
C++ 用の軽量でシンプルかつ高速なXMLパーサーです。
MIT ライセンス。
下記のウェブサイトにチュートリアルとサンプルコードがある。
xerces-c
Apache Xerces は、XML文書のパースと操作を行うための一群のソフトウェアパッケージである。
Apacheソフトウェア財団の Apache Xerces プロジェクトにより開発されている。
Apacheライセンス。
下記のウェブサイトにサンプルコードがある。
下記のウェブサイトで使い方が紹介されている。
hatenablog : Xerces-C++のサンプルコード
arabica
C ++で記述された XML ツールキットです。
SAX2、DOM、XPath、および XSLT の実装を提供します。
XMLパーサーは expat を使用している。
ビルドの時は、expat ライブラリが必要です。
下記のウェブサイトにサンプルコードがある。
このサンプルコードを Macでビルドできるように Makefile を追加したものを Github に公開した。
https://github.com/ohwada/MAC_cpp_Samples/tree/master/arabica/examples
RapidXml
C ++で記述されたDOMスタイルのin-situパーサーである。
可能な限り高速化しようとします。
ライブラリ全体が単一のヘッダーファイルに含まれており、ビルドは必要ありません。
MIT ライセンス または Boost Software ライセンス。
下記のウェブサイトで使い方が紹介されている。
codezine : 高速軽量XMLパーサ:RapidXMLを触ってみた
POCO
POCO C++ Libraries は、C++のネットワーク対応でポータブルなオープンソース・クラスライブラリのコレクションです。
Boost Software ライセンス。
wikipedia : POCO C++ Libraries
下記のウェブサイトで XML パーサーとしての使い方が紹介されている。
codeproject : Learning Poco: Load XML Configuration
boost
Boost とは、C++の先駆的な開発者のコミュニティ、およびそのコミュニティによって公開されているオープンソースのソフトウェアライブラリのことです。
下記のウェブサイトで XML パーサーとしての使い方が紹介されている。