ヘッダファイルのみのC++用JSONライブラリ picojson
「C++で手軽なJSONパーサがないだろうか?」と思っていたところ、
なんとヘッダファイルだけで記載された素晴らしいライブラリがありました(いまさらですみません。)
ソースは今はgithubで管理されていて、こちらに最新版があるようです。
kazuho/picojson https://github.com/kazuho/picojson
使い方
こんな感じの、ユーサーIDとパスワードを管理するオブジェクトが2つあるというデータだとすると、
[ { "userID":"foo", "userPW":"bar" }, { "userID":"hoge", "userPW":"hogehoge" } ] |
void read(const char* filepath) { std::ifstream ifs(filepath); picojson::value v; ifs >> v; std::string err = picojson::get_last_error(); if(!err.empty()) { std::cerr << err << std::endl; return; } if(v.is<picojson::array>()) { picojson::array& a = v.get<picojson::array>(); for (picojson::array::iterator i = a.begin(); i != a.end(); ++i) { picojson::object& o = (*i).get<picojson::object>(); std::cout << o["userID"].get<std::string>() << std::endl; std::cout << o["userPW"].get<std::string>() << std::endl; } } } |
と、こんな感じで取得できる。
コメントを残す