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

SWF8

UTF8で「あそん」とだけ書かれた、改行コードの違う3つのテキストファイルを読み込んでいます。読み込んだ後にLZX側で改行コードをすべてCRに変換しています。エンコードされた文字列(化けたように見えている文字列)で青字は変換前、赤字は変換後です。

この内容を表示するためには Adobe Flash Plugin が必要です。

<?xml version="1.0" encoding="UTF-8"?>
<canvas proxied="false" bgcolor="0xeeeeee" fontsize="15">
<method name="replace" args="text,from,to">
  return text.split(from).join(to);
</method>
<method name="loadTextFile" args="filename">
  System.useCodepage = false;
  var CR = String.fromCharCode(13);
  var LF = String.fromCharCode(10);
  var t = new LoadVars();
  t.onData = function(data){
    if(data!=undefined){
      txtescape.setAttribute('text',escape(data));
      data = canvas.replace(data, CR+LF, CR);
      data = canvas.replace(data, LF, CR);
      txt.setAttribute('text',data);
      txtescape2.setAttribute('text',escape(data));
    }else{
      txt.setAttribute('text',"読み込み失敗");
      txtescape.clearText();
      txtescape2.clearText();
    }
  };
  t.sendAndLoad(filename, t, "GET");
</method>
 
<simplelayout/>
<button onclick="parent.loadTextFile('http://www.openlaszlo-ason.com/media/utf8_crlf.txt')">
外部テキストファイル(utf8,cr+lf)読み込み
</button>
<button onclick="parent.loadTextFile('http://www.openlaszlo-ason.com/media/utf8_cr.txt')">
外部テキストファイル(utf8,cr)読み込み
</button>
<button onclick="parent.loadTextFile('http://www.openlaszlo-ason.com/media/utf8_lf.txt')">
外部テキストファイル(utf8,lf)読み込み
</button>
<text id="txt" fgcolor="red"/>
<text id="txtescape" fgcolor="blue" />
<text id="txtescape2" fgcolor="red" />
</canvas>

SWF9以上

外部テキストファイルの読み込みはActionscriptを使ってるのですが、swf8(as2)とswf9以上(as3)とで書き方が違います。

サンプルの読み込みボタンを押すと外部テキストファイルinfo.htmlの中身をそのまま表示します。HTMLタグはOpenLaszloでサポートしている分が使えます。

テキストファイルの中身を変えても、SWFを再コンパイルせずに再読み込みできます。

この内容を表示するためには Adobe Flash Plugin が必要です。
(OpenLaszlo4.7.1/swf10)

<?xml version="1.0" encoding="UTF-8"?>
<canvas proxied="false" bgcolor="0xeeeeee">
 
  <!-- swf9以上限定 -->
 
  <passthrough>
    import flash.net.URLLoader;
    import flash.net.URLLoaderDataFormat;
    import flash.net.URLRequest;
    import flash.system.System;
    import flash.events.Event;
  </passthrough>
  <method name="replace" args="text,from,to">
    return text.split(from).join(to);
  </method>
  <method name="loadFile" args="filename">
    System.useCodePage = false;
    var myLoader = new URLLoader();
    myLoader.addEventListener(Event.COMPLETE, onComplete);
    var myRequest = new URLRequest(filename);
    myLoader.load(myRequest);
  </method>
  <method name="onComplete" args="e">
    var CR = String.fromCharCode(13);
    var LF = String.fromCharCode(10);
    var data = e.target.data
    data = canvas.replace(data, CR+LF, CR);
    data = canvas.replace(data, LF, CR);
    txt.setAttribute('text', data);
  </method>
  <simplelayout/>
  <button onclick="canvas.loadFile('/DEMO/info.html')">読み込み</button>
  <text id="txt" x="10" fontsize="12" bgcolor="white"/>
</canvas>
loadfile.txt · 最終更新: 2010/04/05 19:32 by ason
Copyright © 2008~ずっと ason(minamotonoason@gmail.com)

chuumap 中小企業ツイッターマップ 製造、加工、卸などB2B主体の個人事業者、中小企業のツイッターを、グーグルマップの住所の位置に正確に表示。
tentwi 店舗でツイート 飲食店、販売店など、一般消費者向けの店舗を構えるお店ツイッターを、グーグルマップの住所の位置に正確に表示。
廃句ったー あなたのツイッターの最近のツイートから廃句もとい俳句を生成。
みかけったー 超人気!あなたのツイッターの最近のツイートからみかけの年齢と性別を診断。
キキキーったー 最近のツイートからキーの使用回数をしらべます。
SLOTTER(すろったー) あなたのツイッターのタイムラインのアイコンでスロット。FLASHゲーム。
MultiLangTweet 一度に48ヶ国語に翻訳してツイート。
英訳ったー 英訳または日本語訳してツイート。
バンドメンバー募集サイト シンプルなバンドメンバー募集サイト。
CMS総合デモサイト 有名オープンソースCMS、EC、SNS、Wikiを一度に全部体験できる総合デモサイト
ビズロック BizRock(ビズロック)~音楽ライブでプレゼン!情熱型ビジネス交流会