Base64Encoder
♥1 |
Line 42 |
Modified 2009-05-01 14:34:55 |
MIT License
archived:2017-03-10 15:08:29
ActionScript3 source code
/**
* Copyright tkinjo ( http://wonderfl.net/user/tkinjo )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/3hGC
*/
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="465" height="465">
<mx:Script>
<![CDATA[
import flash.events.ProgressEvent;
import flash.net.FileReference;
import mx.events.FlexEvent;
import mx.utils.Base64Encoder;
private var ファイルリファレンス:FileReference;
/**
* ファイルを Base64 エンコードストリングにエンコードします。
*
*
* wonderfl に任意の画像を埋め込むときなどにどうぞ。
*
*
*
* Base64 エンコードストリングの使用例
*
* forked from: 2009-3-14 wonderfl に任意の画像を埋め込む
* http://wonderfl.kayac.com/code/d13a85899a700da06cfcce52aa87fbefd5708479
*
*
*
* 読みやすいかと思って変数や関数名を日本語にしてみましたが…思ったよりコードが書きにくくなりますね…。
*/
/**
*
*/
private function 開くボタンを押した( イベント:FlexEvent ):void {
ファイルリファレンス = new FileReference();
ファイルリファレンス.addEventListener( Event.SELECT, 選択した );
ファイルリファレンス.browse();
}
/**
*
*/
private function 選択した( イベント:Event ):void {
/**
* var ファイルリファレンス:FileReference = イベント.target as FileReference;
* と書いてはいけない。
* FileReference はローカル変数で使えないらしく、読み込みに失敗することも。
*/
//var ファイルリファレンス:FileReference = イベント.target as FileReference;
ファイルリファレンス.addEventListener( ProgressEvent.PROGRESS, ダウンロード処理中 );
ファイルリファレンス.addEventListener( Event.COMPLETE, ダウンロードが完了 );
ファイルリファレンス.load();
}
/**
*
*/
private function ダウンロード処理中( イベント:ProgressEvent ):void {
//メーセージテキスト.text = "読み込み中 : " + イベント.bytesLoaded / イベント.bytesTotal * 100;
メーセージテキスト.text = "読み込み中 : " + イベント.bytesLoaded + "/" + イベント.bytesTotal;
}
/**
*
*/
private function ダウンロードが完了( イベント:Event ):void {
メーセージテキスト.text = "変換中";
var base64エンコーダー:Base64Encoder = new Base64Encoder();
base64エンコーダー.insertNewLines = false;
base64エンコーダー.encodeBytes( ファイルリファレンス.data );
メーセージテキスト.text = "変換完了";
結果.text = base64エンコーダー.toString();
}
/**
*
*/
private function クリップボードへコピーボタンを押した( イベント:FlexEvent ):void {
System.setClipboard( 結果.text );
}
]]>
</mx:Script>
<mx:Text id="メーセージテキスト" text="”開く”ボタンから base64 形式に変換したいファイルを選択してください。" />
<mx:HBox>
<mx:Button id="開くボタン" label="開く" buttonDown="開くボタンを押した( event )" />
<mx:Button id="クリップボードへコピーボタン" label="クリップボードへコピー" buttonDown="クリップボードへコピーボタンを押した( event )" />
</mx:HBox>
<mx:TextArea id="結果" width="100%" height="100%" />
</mx:Application>