メイン

chap10 外部テキストファイルの読み込み アーカイブ

2007年8月10日

10.1 外部テキストファイルの読み込み

■外部テキストファイルの読み込み
外部テキストファイルの読み込みにはURLLoaderクラスを使用します。基本的な手順は外部イメージファイルの読み込みと同じですが、Loaderインスタンスが表示オブジェクトなのに対し、URLLoaderクラスのインスタンスは表示オブジェクトではありません。URLLoaderクラスでダウンロードしたテキストを表示するには、ステージに表示されているダイナミックテキストフィールドやTextAreaコンポーネントにテキストを入れる必要があります。なお、Loaderクラスでイメージを読み込む場合と同様にSWFと外部テキストファイルが同じドメインにない場合はセキュリティエラーになります。これを解決するにはクロスドメインポリシーファイルを相手側サーバーに置き、アクセスが許可されているかどうかをチェックするする必要があります。(ポリシーファイルのチェック→p.??)
次のTextdataLoaderクラスでは、外部のテキストファイルを読み込み、そのテキストをステージに作ってあるTextAreaコンポーネントのインスタンスに表示します。

[:NOTE:]
変数の読み込み、PerlやPHPなどのサーバーサイドスクリプトとのやり取りにもURLLoaderクラスを使います。AS2.0のLoadVarsクラスはAS3.0ではURLLoaderクラスに置き換えられました。なお、SWFファイルおよびイメージファイルをロードするにはLoaderクラスを使用します(Loaderクラス→p.??)。

fig10-01-01 外部テキストファイルから読み込んだテキストをTextAreaに表示します。


[:sample:] TextdataLoader.as
例:外部テキストファイルを読み込むTextdataLoaderクラス
package {
	import fl.controls.TextArea;
	import flash.net.URLLoader;
	import flash.net.URLLoaderDataFormat;
	import flash.net.URLRequest;
	import flash.system.System;
	import flash.events.Event;
	import flash.text.TextFormat;

	public class TextdataLoader {
		var txtArea:TextArea;
		
		//コンストラクタ
		function TextdataLoader(ta:TextArea, url:String, shiftJIS:Boolean) {
			txtArea = ta;
			var format:TextFormat = new TextFormat();
			format.size = 18;
			txtArea.setStyle("textFormat",format);
			//URLLoader作成
			var txtLoader:URLLoader = new URLLoader();
			txtLoader.dataFormat = URLLoaderDataFormat.TEXT;
			txtLoader.addEventListener(Event.COMPLETE, onLoaded);
			//URL
			var urlReq:URLRequest = new URLRequest(url);
			//Shift-JISならばtrue
			System.useCodePage = shiftJIS;
			//読み込み開始
			txtLoader.load(urlReq);
		}
		//読み込んだテキストを表示する
		function onLoaded(event:Event):void {
			txtArea.text = txtLoader.data;
		}
	}
}

続きを読む "10.1 外部テキストファイルの読み込み" »

About chap10 外部テキストファイルの読み込み

ブログ「ActionScript3.0入門ノート」のカテゴリ「chap10 外部テキストファイルの読み込み」に投稿されたすべてのエントリーのアーカイブのページです。過去のものから新しいものへ順番に並んでいます。

前のカテゴリはchap09 外部イメージファイルの読み込みです。

次のカテゴリはchap11 XMLファイルの読み込みと活用です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。