JSON

Çá·çloveµÄ¸öÈ˿ռä

×ÖºÅ+ ×÷ÕߣºH5Ö®¼Ò À´Ô´£ºH5Ö®¼Ò 2015-10-31 19:39 ÎÒÒªÆÀÂÛ( )

JsonµÄ±Ê¼ÇºÍÕª³­£ºJSON JavaScript Object Notation£ºÊÇJavaScriptµÄ×Ó¼¯£¬Ö±½ÓÓü´¿É¡£²»ÐèÒªÈκÎÌØÊâµÄ API »ò¹¤¾ß°ü ¸ñ...

JSON

JavaScript Object Notation£ºÊÇJavaScriptµÄ×Ó¼¯£¬Ö±½ÓÓü´¿É¡£²»ÐèÒªÈκÎÌØÊâµÄ API »ò¹¤¾ß°ü

¸ñʽ£º

{¡°Ãû¡±:¡±Öµ¡±} ÃûÖµ¶Ô£¬Èç¹ûÓжà¸ö£¬¼´Êý×éÔò[]ǶÌ×¼´¿É¡£

{¡°name1¡±:[{¡°name1.1¡±:¡±value1.1¡±},{¡°name1.2¡±:¡±value1.2¡±}]}

{ "people": //Ãû

[ { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },

{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb"},

{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }

]//Öµ

}

{ "programmers"://¶à¸öÃûÖµ¶Ô

[ {"firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },

{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },

{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }],

"authors":

[{"firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },  { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },

{ "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }]

}

¸ñʽÃèÊöÈçÏ£º

¶ÔÏóÊÇÒ»¸öÎÞÐòµÄ¡°¡®Ãû³Æ/Öµ¡¯¶Ô¡±¼¯ºÏ¡£Ò»¸ö¶ÔÏóÒÔ¡°{¡±£¨×óÀ¨ºÅ£©¿ªÊ¼£¬¡°}¡±£¨ÓÒÀ¨ºÅ£©½áÊø¡£Ã¿¸ö¡°Ãû³Æ¡±ºó¸úÒ»¸ö¡°:¡±£¨Ã°ºÅ£©£»¡°¡®Ãû³Æ/Öµ¡¯ ¶Ô¡±Ö®¼äʹÓá°,¡±£¨¶ººÅ£©·Ö¸ô¡£

Êý×éÊÇÖµ£¨value£©µÄÓÐÐò¼¯ºÏ¡£Ò»¸öÊý×éÒÔ¡°[¡±£¨×óÖÐÀ¨ºÅ£©¿ªÊ¼£¬¡°]¡±£¨ÓÒÖÐÀ¨ºÅ£©½áÊø¡£ÖµÖ®¼äʹÓá°,¡±£¨¶ººÅ£©·Ö¸ô¡£

wps_clip_image-12921

Öµ£¨value£©¿ÉÒÔÊÇË«ÒýºÅÀ¨ÆðÀ´µÄ×Ö·û´®£¨string£©¡¢ÊýÖµ(number)¡¢true¡¢false¡¢ null¡¢¶ÔÏó£¨object£©»òÕßÊý×飨array£©¡£ÕâЩ½á¹¹¿ÉÒÔǶÌס£

wps_clip_image-3610

¼´Ò»¸öÔªËØÒ»¸ö{}£¬¶à¸öÔªËØ¿ÉÒÔдÔÚÒ»¸ö{}»òÓÃ[]À´ÊµÏÖ¡£Ò²¾ÍÊÇ˵¡°Ãû¡±¾ÍÏ൱ÓÚÒ»¸ö±äÁ¿Ãû¡£

ÔÚjavascriptÀïÃæÊ¹ÓÃJSON£º´Ëʱpeople±äÁ¿¾Í²»ÔÙÊÇJSON¸ñʽµÄ×Ö·û´®Êý¾ÝÁË¡£

Var people =

{ "programmers"://¶à¸öÃûÖµ¶Ô

[ {"firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },

{ "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },

{ "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }],

"authors":

[{"firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },  { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },

{ "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }]

}//ÕâÑù¾Í¿ÉÒÔÁË£¬¾ÍÖ±½Ó°ÑJSON¸ñʽµÄÊý¾Ý¸øjavascriptµÄÒ»¸ö±äÁ¿¡£

·ÃÎÊJSONÀïÃæµÄÖµ£º

people.programmers[0].lastName; Êý×éË÷ÒýÊÇ´ÓÁ㿪ʼµÄ¡£½á¹ûÊÇ×Ö·û´®ÖµMcLaughlin

ÐÞ¸ÄÀïÃæµÄÖµ£º

people.programmers[0].lastName = ¡°new_Value¡±;

ת»»»áJSON×Ö·û´®£º

String  newJSONtext = people.toJSONString();//²»ÊÇjavascriptΪÈõÀàÐÍô£¿ÔõôÓÃString

¿ÉÒÔ½« ÈκÎJavaScript ¶ÔÏóת»»Îª JSON Îı¾£¬ÈçÏ£º

String myObjectJSON = myObject.toJSONString();

ÍøÂç½Ì³Ì£º

Eval():¿ÉÒÔʹÓÃeval()·½·¨£¬ÓÃÓÚÖ´ÐÐÒ»¸öjavascript¶Î£¬·µ»ØÖ´Ðнá¹û¡£¶ÔÓÚXML£¬Ê¹ÓÃDOMÀ´´¦Àí¡£JSON±ÈXMLÔÚAjax·½Ãæ¸ü¿ì¡£ÓÃeval()´¦ÀíJSON×Ö·û´®¡£

JSON Óï·¨¹æÔò

JSON Óï·¨ÊÇ JavaScript ¶ÔÏó±íʾ·¨Óï·¨µÄ×Ó¼¯¡£

¡¤ Êý¾ÝÔÚÃû³Æ/Öµ¶ÔÖÐ ¡± firstName¡±:¡±Jone¡±  µÈ¼ÛJSµÄfirstName=¡±Jone¡±

¡¤ Êý¾ÝÓɶººÅ·Ö¸ô

¡¤ »¨À¨ºÅ±£´æ¶ÔÏó

¡¤ ·½À¨ºÅ±£´æÊý×é

JSON Öµ

JSON Öµ¿ÉÒÔÊÇ£º(¾ÍÊÇÃûÖµ¶ÔµÄÖµ)

¡¤ Êý×Ö£¨ÕûÊý»ò¸¡µãÊý£©

¡¤ ×Ö·û´®£¨ÔÚË«ÒýºÅÖУ©

¡¤ Âß¼­Öµ£¨true »ò false£©

¡¤ Êý×飨ÔÚ·½À¨ºÅÖУ©

¡¤ ¶ÔÏó£¨ÔÚ»¨À¨ºÅÖУ© £º¾ÍÊÇ{ÀïÃæÊÇÃûÖµ¶Ô£¬»òÊý×飬¶ÔÏóµÈ}£»

¡¤ null

JSON 1c40 ¼þ

¡¤ JSON ÎļþµÄÎļþÀàÐÍÊÇ ".json"

¡¤ JSON Îı¾µÄ MIME ÀàÐÍÊÇ "application/json"

JSONµÄ³£ÓÃÓ÷¨ÊÇ´Óweb ·þÎñÆ÷¶ÁJSON×Ö·û´®£¬»òÕß˵ÊǺǫ́´«¸øÇ°Ì¨¡£

´Ó֮ǰ¿ÉÒÔÖªµÀJSON¾ÍÊǶÔÏóµÄ·ÃÎÊ·Åʽ£¬µ«ÊÇÔÚJSÖÐÈ´ÊÇÒ»¸ö×Ö·û´®£¬ÄÇôҪ×÷Ϊ¶ÔÏóÔõô°ì£¿£¿¾ÍÓÃeval()·½·¨±àÒëJSON×Ö·û´®£¬·µ»ØµÄ¶ÔÏó¾Í¿ÉÒÔÁË¡£

var txt = '{ "employees" : [' +

'{ "firstName":"Bill" , "lastName":"Gates" },' +

'{ "firstName":"George" , "lastName":"Bush" },' +

'{ "firstName":"Thomas" , "lastName":"Carter" } ]}';

var obj = eval ("(" + txt + ")");//ΪÁ˱ÜÃâÓï·¨´í£¬ÐèÒª¼ÓÀ¨ºÅ¡£

obj.employees[1].firstName//¾Í¿ÉÒÔ·ÃÎÊ»ò¸³ÖµÁË¡£

ÈÃJSON¿ÉÒÔ´«µÝµ½·þÎñÆ÷£¬ÄÇô¾ÍÒª×ñÑ­GWT¸ñʽ£¬ÓÉÓÚ²»ÄÜÖ±½ÓÊÇGWTµÄ±ê×¼¸ñʽ£¬ÄÇô¾ÍÐèҪһЩ¶îÍâµÄ²Ù×÷£º

µÚÒ»£¬ÒýÓÃHTTP ºÍJSON Ö§³Ö¡£

µÚ¶þ£¬ÔÚ¿Í»§¶Ë´´½¨JSON Êý¾Ý£¬Ìá½»µ½·þÎñÆ÷

µÚÈý£¬ÔÚ·þÎñÆ÷ÉÏÖØÐ´Êý¾Ý¸ñʽ½âÎöµÄ´úÂ룬ʹ֧֮³ÖJSON ¸ñʽµÄÊý¾Ý

µÚËÄ£¬ÔÚ·þÎñÆ÷ÉÏ×éÖ¯JSON ¸ñʽµÄÊý¾Ý£¬·µ»Ø¸ø¿Í»§¶Ë¡£

µÚÎ壬¿Í»§¶Ë½âÎö·þÎñÆ÷´«»ØµÄJSON Êý¾Ý£¬ÕýÈ·µÄÏÔʾ¡£

Ïê¼ûJSON½Ì³Ì.pdf¡£

ÕâÀï¾ÍÓÐÁËÀàÐÍÁË£ºJSONArray,JSONBoolean,JSONException,JSONObject µÈµÈ¡£Ò»Õû¸öJSON¶¼¿ÉÒÔÓÃJSONObjectÀ´×°¡£¼û½Ì³Ì2Ò³¡£

JSONObject input = new JSONObject();

JSONString value = new JSONString(¡°value¡±);

JsonдÍêÖ®ºó£¬Óöµ½µÄ×î¶àµÄÎÊÌâ¾ÍÊǽâÎö´íÎ󣬸ñʽ²»¶Ô£¬ÄÇÔõôµ÷£¿

ÏÂÃæ¸ø¸öÔÚÏßУÑéµÄ¹¤¾ß£¬Ð´ÍêÖ®ºóУÑéһϾÍÍê±ÏÁË£º

¶ÔÓÚC++½âÎöJson£¬ÏÂÃæ¸øÒ»¸öÍøÉϵÄÎÄÕ£¬ºÜºÃÓãº

¡¾×ª¡¿C++½âÎöJSONµÄºÃÎÄÕÂ

ʹÓÃC++´¦ÀíJSONÊý¾Ý½»»»¸ñʽ

Ò»¡¢ÕªÒª

    JSONµÄÈ«³ÆÎª£ºJavaScript Object Notation£¬¹ËÃû˼Ò壬JSONÊÇÓÃÓÚ±ê¼ÇJavascript¶ÔÏóµÄ£¬JSON¹Ù·½µÄ½âÊÍΪ£ºJSONÊÇÒ»ÖÖÇáÁ¿¼¶µÄÊý¾Ý´«Êä¸ñʽ¡£

±¾ÎIJ¢²»Ïêϸ½éÉÜJSON±¾ÉíµÄϸ½Ú£¬Ö¼ÔÚÌÖÂÛÈçºÎʹÓÃC++ÓïÑÔÀ´´¦ÀíJSON¡£¹ØÓÚJSON¸ü¾ßÌåµÄÐÅÏ¢£¬¿É²Î¼ûJSON¹ÙÍø£º¡£

¶þ¡¢±¾ÎÄÑ¡Ôñ´¦ÀíJSONµÄC++¿â

   ±¾ÎÄÑ¡ÔñÒ»¸öµÚÈý·½¿âjsoncppÀ´½âÎöJSON¡£jsoncppÊDZȽϳöÃûµÄC++ JSON½âÎö¿â¡£ÔÚJSON¹ÙÍøÒ²ÊÇÊ×ÍÆµÄ¡£

ÏÂÔØµØÖ·Îª£º¡£±¾ÎÄʹÓõÄjsoncpp°æ±¾Îª£º0.5.0¡£

Èý¡¢jsoncppÔÚWindowsϵıàÒë

ҪʹÓõÚÈý·½Ô´Âë¿â£¬µÚÒ»²½ÉÙ²»Á˵ľÍÊDZàÒ룬½«Ô´ÂëÎļþ±àÒë³ÉÎÒÃÇ·½±ãʹÓõĶ¯Ì¬Á´½Ó¿â¡¢¾²Ì¬Á´½Ó¿â»òÕß¾²Ì¬µ¼Èë¿â[1]¡£

jsconcpp½øÐÐJSON½âÎöµÄÔ´ÂëÎļþ·Ö²¼ÔÚinclude/json¡¢src/lib_jsonÏ¡£ÆäʵjsoncppÔ´Âë²¢²»¶à£¬ÎªÁË·½±ã²úÆ·¹ÜÀí£¬´Ë´¦Ã»±ØÒª½«Æä±àÒëΪ¶¯Ì¬Á´½Ó¿â»òÕß¾²Ì¬µ¼Èë¿â£¬ËùÒÔÎÒÃÇÑ¡ÔñʹÓþ²Ì¬Á´½Ó¿â[2]¡£

jsoncppÒѾ­´¦ÀíµÄºÜÍêÉÆÁË£¬ËùÓбàÒëÑ¡Ïî¶¼ÒѾ­ÅäÖú㬴ò¿ªmakefiles/vs71/jsoncpp.sln±ã¿ÉÒÔ¿ªÊ¼±àÒ루ĬÈÏÊÇʹÓÃVS2003±àÒëÆ÷µÄ£¬´ò¿ªÊ±Ö±½Ó°´ÕÕVS2005Ìáʾת»»¼´¿É£©¡£

ËÄ¡¢jsoncppʹÓÃÏê½â

    jsoncppÖ÷Òª°üº¬ÈýÖÖÀàÐ͵Äclass£ºValue¡¢Reader¡¢Writer¡£jsoncppÖÐËùÓжÔÏó¡¢ÀàÃû¶¼ÔÚnamespace JsonÖУ¬°üº¬json.h¼´¿É¡£

    Json::ValueÖ»ÄÜ´¦ÀíANSIÀàÐ͵Ä×Ö·û´®£¬Èç¹ûC++³ÌÐòÊÇÓÃUnicode±àÂëµÄ£¬×îºÃ¼ÓÒ»¸öAdaptÀàÀ´ÊÊÅä¡£

1¡¢Value

    Json::ValueÊÇjsoncppÖÐ×î»ù±¾¡¢×îÖØÒªµÄÀ࣬ÓÃÓÚ±íʾ¸÷ÖÖÀàÐ͵ĶÔÏó£¬jsoncppÖ§³ÖµÄ¶ÔÏóÀàÐͿɼûJson::ValueTypeö¾ÙÖµ¡£

¿ÉÈçÏÂÊÇÓÃJson::ValueÀࣺ

Json::Value json_temp;      //ÁÙʱ¶ÔÏ󣬹©ÈçÏ´úÂëʹÓÃ

json_temp["name"] = Json::Value("huchao");

json_temp["age"] = Json::Value(26);

Json::Value root;  //±íʾÕû¸öjson¶ÔÏó

root["key_string"] = Json::Value("value_string");         //н¨Ò»¸öKey£¨ÃûΪ£ºkey_string£©£¬¸³Óè×Ö·û´®Öµ£º"value_string"¡£

root["key_number"] = Json::Value(12345);            //н¨Ò»¸öKey£¨ÃûΪ£ºkey_number£©£¬¸³ÓèÊýÖµ£º12345¡£

root["key_boolean"] = Json::Value(false);              //н¨Ò»¸öKey£¨ÃûΪ£ºkey_boolean£©£¬¸³ÓèboolÖµ£ºfalse¡£

root["key_double"] = Json::Value(12.345);            //н¨Ò»¸öKey£¨ÃûΪ£ºkey_double£©£¬¸³ÓèdoubleÖµ£º12.345¡£

¡¡

1.±¾Õ¾×ñÑ­ÐÐÒµ¹æ·¶£¬ÈκÎ×ªÔØµÄ¸å¼þ¶¼»áÃ÷È·±ê×¢×÷ÕߺÍÀ´Ô´£»2.±¾Õ¾µÄÔ­´´ÎÄÕ£¬Çë×ªÔØÊ±Îñ±Ø×¢Ã÷ÎÄÕÂ×÷ÕߺÍÀ´Ô´£¬²»×ðÖØÔ­´´µÄÐÐΪÎÒÃǽ«×·¾¿ÔðÈΣ»3.×÷ÕßͶ¸å¿ÉÄܻᾭÎÒÃDZ༭Ð޸Ļò²¹³ä¡£

Ïà¹ØÎÄÕÂ
  • lovesaxphoneµÄרÀ¸

    lovesaxphoneµÄרÀ¸

    2015-10-20 13:55

  • cirplanµÄ¸öÈ˿ռä

    cirplanµÄ¸öÈ˿ռä

    2015-09-20 11:59

ÍøÓѵãÆÀ
¾