今回はFlashムービーで外部テキスト・ファイルを読み込み,テキスト・データ分割様々な処理をする方法について説明します。ActionScript 3.0では,テキスト・ファイルやXMLデータ,CGIからの戻り値等,外部のデータにアクセスする際には,「URLLoaderクラス」を使用します。また,外部データのURIや,データ送信の際に付加したいパラメータを管理するには,URLRequestクラスや,URLVariablesクラスを使用します。
図1のムービーは,Flashムービーと同じディレクトリ内にあるテキスト・ファイル「textDdata.txt」を読み込み,その内容を表示しています。
![]() |
図1●テキスト・ファイルを読み込むムービー(こちらからサンプル・ファイルをダウンロードできます) [クリックすると別ウィンドウでムービーを表示します] |
テキスト・ファイルを読み込む
ActionScript3.0を使って,外部データにアクセスする場合には,「URLLoaderクラス」を使用します。また,ファイルを読み込む際には,読み込むファイルのURLを指定しますよね。このファイルのURLを指定するには,「URLRequestクラス」を使用します。これら2つのクラスの使い方を,具体的にテキスト・ファイルを読み込むコードを記述しながらご紹介します。
まずは,読み込むテキスト・ファイルを用意します。今回は,図2のようなテキスト・ファイルを読み込んでみます。
![]() |
図2●読み込むテキスト・ファイル |
図2の表は,図3のようなExcelのデータを,テキストで書き出しているような状態と考えてください。いわゆる,「タブ区切り形式」のテキスト・ファイルというわけですね。
![]() |
図3●Excelでのイメージ |
なお,タブ区切り形式のテキスト・ファイルの作り方は,Excelがあれば,Excelで表を作成し,そのままコピーして,「メモ帳」等のテキストエディタに貼り付けるだけです。また,ActionScriptからテキスト・ファイルを扱いやすくするためには,テキスト・ファイルを保存する際に,文字コードを「UTF-8」にしておくと便利です(「メモ帳」であれば,[名前を付けて保存]ダイアログの[保存]ボタンの左に,文字コードを選択するボタンが用意されています)。
では,このテキスト・ファイルを読み込むコードを記述してみましょう。新規Flashドキュメントを作成し,テキスト・ファイルと同じフォルダ内に任意の名前を付けて保存します。スクリプト用のレイヤーをひとつ用意し,次のようにコードを記述します。
|
![]() |
図4●テキスト・ファイルの内容を読み込んで表示 |
ムービープレビューで結果を確認してみると,図4のようにテキスト・ファイルの内容が表示されますね。では,このコードの内容を見てみましょう。
外部のデータにアクセスするには,まず,「そのデータをどこに取りに行くのか」という情報を,URLRequestクラスを使って作成します。ケータイで読み取れるQRコード作るような感じですね。URLRequestクラスは,コンストラクタ関数に,データのURLを文字列形式で渡して作成します。今回は,Flashムービーと同じディレクトリ内にある「textData.txt」を読み込みたいので,
|
のようになりますね。
どこに取りに行くかの指定ができた所で,今度はデータを送受信するためのURLLoaderクラスを準備します。これは,ケータイを手元に準備するような感じですね。
|