タグ

picojsonに関するnilabのブックマーク (9)

  • [ヅ] C++ と picojson で Twitter 検索の JSON データをパースしてみる (2011-11-30)

    Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い! で紹介されていたコードをベースにして、コマンドライン引数を検索キーワードとするTwitter検索を作ってみた。 ソースコード: twisearch.cpp #include <curl/curl.h> // /usr/include/curl/curl.h #include "picojson.h" typedef struct { char* data; // response data from server size_t size; // response size of data } MEMFILE; MEMFILE* memfopen() { MEMFILE* mf = (MEMFILE*) malloc(sizeof(MEMFILE)); mf->data = NULL; mf

    nilab
    nilab 2011/11/30
    ヅラッシュ! - C++ と picojson で Twitter 検索の JSON データをパースしてみる
  • share - Revision 39279: /lang/cplusplus/picojson/trunk/examples

    nilab
    nilab 2011/11/30
    share - Revision 39079: /lang/cplusplus/picojson/trunk/examples : iostream.cc : irc-watcher.cc : wassr-timeline.cc
  • /lang/cplusplus/picojson/trunk/picojson.h – CodeRepos::Share – Trac

    * Redistribution and use in source and binary forms, with or without

    nilab
    nilab 2011/11/30
    /lang/cplusplus/picojson/trunk/picojson.h – CodeRepos::Share – Trac
  • picojsonの使い方メモ – taichino.com

    JSONなデータをスクリプト言語から触るのは相当簡単ですが、C++とかでだとそれなりに大変です。なのでライブラリ使うのが良いかという話になります。最初はboostのPropertyTreeを使っていたのですが、DOMにしては中途半端だし、treewalkもできないし、コンパイル重いし、ソース読めないしでイライラは頂点に達していたのですが、picojsonが良いらしいと小耳に挟みまして試してみたら、大変使いやすかったのでメモ書きです。 実際に以下のJSONデータをpicojsonから触ってみます。 { "key1": [ "val1", "val2", "val3" ], "to_delete": "delete val" } 大まかな使い方は以下のような感じでしょうか。ツリーの内部ノードは、object型(map<string , picojson::value>)とarray型(vect

    nilab
    nilab 2011/11/30
    picojsonの使い方メモ « taichino.com
  • picojsonを使ってみた - Capsule

    C++でJSONパーサが欲しくなりpicojsonというライブラリを使って見ました。 特徴はヘッダをインクルードするだけで使える、STLを利用しているのでobjectとarrayの操作を覚えなくて良いところ。 Parsing #include <iostream> #include <cstring> using namespace std; #include "picojson.h" using namespace picojson; int main(){ const char *str = "{\"a\" : 1, \"b\" : \"test\"}"; value v; parse(v, str, str + strlen(str)); if(v.is<object>()){ value a = v.get("a"); if(a.is<double>()){ cout << "a

    nilab
    nilab 2011/11/30
    picojsonを使ってみた - Capsule「複数のcppファイルからヘッダをインクルードするとリンカにシンボル名が衝突してると」「operator==(const value& x, const value& y)にinlineを指定すると関数がインライン展開されるかWeakシンボルに」
  • でらうま倶楽部 : C++でJSONを読み書きするならpicojson

    2011年06月06日18:50 カテゴリプログラム C++でJSONを読み書きするならpicojson さいきんC++始めました。 まだ始めて2、3日なのですがCにクラスとか色々マクロで拡張を施した言語という印象です。 元々の出発点が「C with Classes」というCの拡張なのだからだと思います。 で、まず標準出入力やファイル出入力のやりかたとか触った後に試したのがJSONのパーサー。 ググって見たらpicojsonなるものを発見!これなんとヘッダファイルだけで実装されています。そういうの好き。 こんな感じで使います。 picojson::value json; cin >> json; picojson::object& o = json.get<picojson::object>(); int hoge = o["hoge"].get<double>(); bool fuga

    nilab
    nilab 2011/11/30
    でらうま倶楽部 : C でJSONを読み書きするならpicojson : 「VC2003だとビルド時にエラー」
  • picojsonの使い方が分かる方いませんか? - プログラミング初心者です。C++でJSONの作成、書き換えをしたいのですが、p... - Yahoo!知恵袋

    上記リンク先の例でパース部は以下の部分です。 -------------------------------- value v; std::string err; parse(v, json, json + strlne(json), &err); -------------------------------- 第2パラメータについてはイテレータによりパース後の位置に移動するので、破壊的にしたくない場合は一度他の変数に預けるのが良いかと思います。型はnull, boolean, number, string, array, object が使えます。これらを束ねてvalueという型が存在します。 パースするとvalueが得られ、テンプレートを使用してリフレクションできます。 -------------------------------- v.is<std::string>(); //

    picojsonの使い方が分かる方いませんか? - プログラミング初心者です。C++でJSONの作成、書き換えをしたいのですが、p... - Yahoo!知恵袋
    nilab
    nilab 2011/11/30
    picojsonの使い方が分かる方いませんか? - Yahoo!知恵袋
  • Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!

    kazuhoさんがやってくれました。 ずいぶん前からjsonをC++でパース(SAXじゃなくてDOM)するのに小さいライブラリないかなーと思ってました。個人的にはjson-cというのを使ってたのですが、幾らか気に入らない所があったりビルドが少し手間だったりしていました。STLしか使わなくてvectorとかmapで表現されるツリー構造な物が欲しいなぁって思ってたんです。 とあるIRCで昨日、kazuhoさんと「ほしいですよねー」という話から始まって、githubにあるjsonxxとかも物色しながら「いいのないねー」とか言ってたらkazuhoさんが「もすこし綺麗に書けそう」って言い出して朝から格的に書き始めてついさっき出来上がりました。速いw 名前はpicojson とても小さく、実装コードだと300数十ステップ程です。しかもヘッダファイルだけなので管理が楽です。 試しにwassrのpubl

    Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!
    nilab
    nilab 2011/10/19
    Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!
  • Kazuho@Cybozu Labs: 今更 C++ で JSON パーサ「picojson」を書いたわけ

    既に mattn さんが、「Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!」で紹介してくださっています (mattn さん、アドバイス&バグ情報ありがとうございます!) が、いまさら C++ で JSON パーサを作りました。それは、以下の3点を満たすものがなかったから。 ヘッダファイル only boost 等、他の重たいライブラリに依存しない array や object が STL にマッピングされる コードは、coderepos に置いてありますので、よろしければお使いください (picojson.h)。 なお、現時点での制限事項として、 \n や \r, \uXXXX といったエスケープの処理が未実装rev. 34232 で対応しました (含サロゲートペア) 空白文字の判断基準が RFC と異なるrev. 34277 で空白と

    nilab
    nilab 2011/10/19
    Kazuho@Cybozu Labs: 今更 C++ で JSON パーサ「picojson」を書いたわけ
  • 1