当サイトで生成している RSS(野良feed):

dtpwiki.jpで提供しているサービス:

| トップページ |

2009.05.24

AppleScriptでレコード文字列をデシリアライズ

M.C.P.C.: AppleScriptでレコード文字列のデシリアライズのやり方がわからん

にて、AppleScriptのレコードを表現する文字列

{ creatorversion: "13.0", documentversion: "8.0" }

を、実際にAppleScriptのレコードとして解釈してもらうためにどうすればいいか、ていうことがわからなかったわけです。

ほかのスクリプト言語であれば、これをデシリアライズという表現をして、PerlやJavaScriptだったらevalっていうやつを使うとそれができるわけですが、AppleScriptとデシリアライズと検索しても出てこない。

んて、この前のエントリのコメント欄で教えていただきrun script "{...}"という書き方ができるというので、やってみました。

set str to " {creatorversion: \"13.0\", documentversion: \"8.0\"} " as string
set result to run script result
display alert ("Creator Version: " & (get creatorversion of result) & "
Document Version: " & (get documentversion of result))

Applescriptdeserialize01
▲スクリプトエディタに入力。エスケープ文字のバックスラッシュはOption+¥

Applescriptdeserialize02
▲実行

うまくいきました。これで、外部のソフトを使って処理した結果をAppleScriptで受け取って処理しやすくなりました。楽でいいですね!

2009.05.24 午後 11:06 [Script] |

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/19018/45119039

この記事へのトラックバック一覧です: AppleScriptでレコード文字列をデシリアライズ:

コメント

コメントを書く