FileReferenceでテキストファイルをローカルPCに保存。
FileReferenceでテキストファイルをローカルPCに保存。
*
* Flash Player 10 のローカルファイルアクセス機能 (FileReference クラス)
* http://blogs.adobe.com/akamijo/archives/2008/07/flash_player_10_5.html
*
*
/**
* Copyright umhr ( http://wonderfl.net/user/umhr )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/yjrx
*/
/*
* FileReferenceでテキストファイルをローカルPCに保存。
*
* Flash Player 10 のローカルファイルアクセス機能 (FileReference クラス)
* http://blogs.adobe.com/akamijo/archives/2008/07/flash_player_10_5.html
*
* */
package
{
import com.bit101.components.PushButton;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.net.FileReference;
import flash.text.TextField;
/**
* ...
* @author umhr
*/
public class Main extends Sprite
{
private var _tf:TextField;
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
_tf = new TextField();
_tf.width = 400;
_tf.height = 300;
_tf.type = "input";
_tf.border = true;
_tf.backgroundColor = 0xEEEEEE;
_tf.background = true;
_tf.text = "これは UTF-8 の文字列として保存されます";
_tf.multiline = true;
_tf.wordWrap = true;
this.addChild(_tf);
new PushButton(this, 300, 300, "Save", atClick);
}
private function atClick(event:MouseEvent):void {
var fr:FileReference=new FileReference();
var dat:String = _tf.text;
//Windowsの改行に置換
dat = dat.replace(/\r/g, "\r\n");
fr.addEventListener(Event.COMPLETE,onComplete);
fr.save(dat, "UTF8Text.txt"); // ダイアログを表示する
function onComplete(e:Event):void
{
trace(fr.name); // ユーザが指定したファイル名を表示
}
}
}
}