Section14-02 テキストファイルの読み込み(p.408)のサンプルはちょっとややこしいので、フレームアクションで実行できるシンプルな例を紹介しておきます。
なお、1〜18行目までは読み込んだテキストデータを表示するためのテキストフィールドを作っています。あらかじめ作ってあるテキストフィールドに表示するならば、この部分は必要ありません。
UTFファイルを読み込む例を示していますが、Shift-JISのファイルを読み込む場合は24行目のSystem.useCodePageの値をtrueに設定します。
[:script:]テキストフィールドを作り、外部テキストファイルを読み込む
→ファイル一式をダウンロードする。
なお、1〜18行目までは読み込んだテキストデータを表示するためのテキストフィールドを作っています。あらかじめ作ってあるテキストフィールドに表示するならば、この部分は必要ありません。
UTFファイルを読み込む例を示していますが、Shift-JISのファイルを読み込む場合は24行目のSystem.useCodePageの値をtrueに設定します。
[:script:]テキストフィールドを作り、外部テキストファイルを読み込む
import flash.text.TextFieldAutoSize; //テキストフィールドを作る var fld:TextField=new TextField(); fld.x = 100; fld.y = 50; fld.width = 280; fld.height = 180; fld.border = true; fld.multiline = true; fld.wordWrap = true; fld.autoSize = TextFieldAutoSize.LEFT; addChild(fld); //書式の設定 var tf:TextFormat = new TextFormat(); tf.size = 18; tf.color = 0x333333; fld.defaultTextFormat = tf; //URLLoaderのインスタンスを作る var txtloader=new URLLoader(); var urlReq:URLRequest=new URLRequest(); urlReq.url = "./data/sample_utf.txt"; //unicodeならばfalse System.useCodePage = false; txtloader.load(urlReq); //読み完了イベントのリスナーを登録する txtloader.addEventListener(Event.COMPLETE,completeHandler); //リスナー関数 function completeHandler(eventObj:Event):void { //読み込んだテキストをフィールドに表示する fld.text = txtloader.data; }
→ファイル一式をダウンロードする。