FC2ブログ

DataCompObj ver.2.3の使い方

DataCompObjは、AppleScriptで用いられるあらゆるクラスのデータを自由に読み書きするためのスクリプトオブジェクトライブラリです。もうplistやXMLと格闘する必要はありません。レコードでもスクリプトオブジェクトでも、なんでも簡単に読み書きできるのです。
まずは、DataCompObjスクリプトオブジェクトライブラリ本体をダウンロードします。

DataCompObj(スクリプトオブジェクトライブラリ版)

次にこれを作成するアプリケーションパッケージのscriptsフォルダに入れます(/Contents/Resources/Scripts/)。
あとは、アプリケーションスクリプトにライブラリを読み込んで書き出したいデータとファイルパスを与えるだけです。
では、サンプルのスクリプトを見てみましょう。

set theData to {a:"test", b:true}
set theFile to (choose file name)

set thePath to ((path to current application as string) & "Contents:Resources:Scripts:DataCompObj.scpt") as string
set theObj to (load script file thePath)
tell theObj to writeDataFile(thePath, theData)
return readDataFile(thePath) of theObj


新規スクリプト作成


前半では、適当なデータと保存先のファイルを決めています。本来は、使用目的に応じて適当なデータを用意してください。
後半では、いよいよDataCompObjをloadして、データの書き出しと読み込みを行っています。わずか数行で複雑な書き出し手順を終わらせることができます。
書き出される書類はDataCompObj形式と呼ばれる独特の形式です。以前は、DataCompObjそのものもDataCompObj形式で提供していたので、読み込みには若干の手続きが必要でしたが、Cocoa環境に対応させる都合上、簡略化しました。
開発環境がScript EditorであってもXCodeであっても、Cocoa環境のスクリプトを作成する場合にはDataCompObjは他のパスに移動できません。Cocoa以外の環境であれば、DataCompObjを他のパスに置いたり、スクリプトオブジェクトとして変数に読み込んでコンパイルすることも可能です。
DataCompObjは漢字Talk7の時代に開発されました。データフォークの壁があるのであまり古い環境では動作しませんが、現在のver.2.3もClassic Mac OS 9くらいでなら動作するでしょう。基礎となるデータ読み書きのライブラリなので、互換性には特に気を使って開発しています。
DataCompObjはフリーウエアとしてお使いください。ただしアプリケーションに組み込む場合にはその旨をドキュメントに明記してご一報ください。
テーマ: Mac | ジャンル: コンピュータ

コメント

コメントの投稿


管理者にだけ表示を許可する