<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Python &#8211; Mach3.laBlog</title>
	<atom:link href="https://blog.mach3.jp/tag/python/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.mach3.jp</link>
	<description></description>
	<lastBuildDate>Fri, 22 Oct 2010 05:35:23 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>様々な言葉でJSONを弄ってみるメモ</title>
		<link>https://blog.mach3.jp/2010/10/22/json-on-various-lang.html</link>
		
		<dc:creator><![CDATA[mach3]]></dc:creator>
		<pubDate>Fri, 22 Oct 2010 05:35:23 +0000</pubDate>
				<category><![CDATA[Laboratory]]></category>
		<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>
		<guid isPermaLink="false">http://blog.mach3.jp/?p=913</guid>

					<description><![CDATA[引き続きJSONのお話ですが、 連携に向いているフォーマットだ、という事はつまり 他の言語でを扱う方法を知っておかねばならないという事。 という訳で、軽くメモっておきます。 次のようなJSONフォーマットの文字列が 「s [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>引き続きJSONのお話ですが、<br />
連携に向いているフォーマットだ、という事はつまり<br />
他の言語でを扱う方法を知っておかねばならないという事。<br />
という訳で、軽くメモっておきます。</p>



<span id="more-913"></span>



<p>次のようなJSONフォーマットの文字列が<br />
「<em>str</em>」に格納されていると想定します。</p>


<pre class="wp-block-code"><span><code class="hljs language-json">{
    <span class="hljs-attr">"status"</span> : <span class="hljs-string">"success"</span>,
    <span class="hljs-attr">"content"</span> : &#91;
        { <span class="hljs-attr">"id"</span> : <span class="hljs-number">1</span> , <span class="hljs-attr">"message"</span> : <span class="hljs-string">"Nice to meet you, world !"</span> },
        { <span class="hljs-attr">"id"</span> : <span class="hljs-number">2</span> , <span class="hljs-attr">"message"</span> : <span class="hljs-string">"Hello, world !"</span> },
        { <span class="hljs-attr">"id"</span> : <span class="hljs-number">3</span> , <span class="hljs-attr">"message"</span> : <span class="hljs-string">"Hello again, world !"</span> }
    ]
}
</code></span></pre>


<p>この文字列をオブジェクトとしてロードし、<br />
それをもう一度JSON文字列として出力するテストです。</p>



<h2 class="wp-block-heading">PHP</h2>


<pre class="wp-block-code"><span><code class="hljs language-php">$php_obj = json_decode( $str ); <span class="hljs-comment">// JSONからPHPオブジェクトを生成</span>
$json_string = json_encode( $php_obj ); <span class="hljs-comment">// PHPオブジェクトからJSONを生成</span>
</code></span></pre>


<p>さすが関数から生まれてきたような言語のPHP。<br />
JSONだって関数一発です。</p>



<h2 class="wp-block-heading">Ruby</h2>



<p>Rubyは1.9からjsonライブラリが標準搭載されているそうです。<br />
当方の環境も1.9だったのでそのままそれを利用させて頂きます。</p>



<p><a href="http://doc.ruby-lang.org/ja/1.9.1/library/json.html">library json</a></p>


<pre class="wp-block-code"><span><code class="hljs language-php"><span class="hljs-keyword">require</span> <span class="hljs-string">"json"</span> <span class="hljs-comment"># jsonライブラリが必要</span>
ruby_obj = JSON.load( str ) <span class="hljs-comment"># JSONからRubyオブジェクトを生成</span>
json_string = JSON.generate( ruby_obj ) <span class="hljs-comment"># RubyオブジェクトからJSONを生成</span>
</code></span></pre>


<p>1.9未満だと他のライブラリに依存する事になります。<br />
面倒なので（!?）ここでは割愛。</p>



<h2 class="wp-block-heading">ActionScript3</h2>



<p>AS3はJSONのパーサが標準装備されていないので、<br />
<em>as3corelib</em>を使わせていただきます。</p>



<p><a href="http://github.com/mikechambers/as3corelib">mikechambers&#8217;s as3corelib at master &#8211; GitHub</a></p>


<pre class="wp-block-code"><span><code class="hljs language-javascript"><span class="hljs-keyword">import</span> com.adobe.serialization.json.JSON; <span class="hljs-comment">// as3corelibからインポート</span>

<span class="hljs-comment">// 中略</span>

<span class="hljs-keyword">var</span> as3_obj:<span class="hljs-built_in">Object</span> = <span class="hljs-built_in">JSON</span>.decode( str ); <span class="hljs-comment">// JSONからAS3オブジェクトを生成</span>
<span class="hljs-keyword">var</span> json_string:<span class="hljs-built_in">String</span> = <span class="hljs-built_in">JSON</span>.encode( as3_obj ); <span class="hljs-comment">// AS3オブジェクトからJSONを生成</span>
</code></span></pre>


<p>AS3というとXMLと相性も良いのでそちらをチョイスする事が多かったですが、<br />
データ量によっては帯域節約の為にJSONを使うのも大いにありですね。その後も楽ですし。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>XMLとかYAMLとか色々ありますが、JavaScriptの隆盛もあって<br />
最近はJSONフォーマットがもてはやされている感じですね。<br />
学習コストも極めて少なくて済むので、今後とも重宝されそうです。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
