現在、POP3のプロトコルをSocketクラスを使って読み込むサンプルを作成していたが、
ByteArrayに書き込んだデータを読もうとしても、常に0(ゼロ)になってしまい、はまってしまいました。

[AS]
var ba:ByteArray = new ByteArray();
ba.writeMultiByte(“abc”,”UTF-8″);
trace(“Length is ” + ba.length + “( ” + ba.bytesAvailable + “)”);

// 必ず Error #2030: End of file was encountered.のエラーが発生します。
try{
var ret1:String = ba.readUTF();
// 必ずエラーです
}
catch(err:Error){
trace(err.message);
}

// positonを0にしなければいけません
ba.position = 0;
trace(“Length is ” + ba.length + “( ” + ba.bytesAvailable + “)”);
try{
var ret2:String = ba.readUTFBytes(ba.bytesAvailable);
trace(ret2 + ” is abc”);
}
catch(err:Error){

}
[/AS]

positionを0に設定しなければいけないようです。
結構、ここに達するまでに時間がかかってしまいました。

お仕事のご依頼・相談を承ります
この記事に関連するお仕事のご依頼やご相談をお待ちしております。 詳しくは、こちら

One Response to “as3:ByteArrayのbytesAvailableが常に0(ゼロ)のままです。”

Leave a Reply

お仕事のご依頼・相談
この記事に関連するお仕事のご依頼やご相談をお待ちしております。 詳しくは、こちら
ソフトウェア&ライブラリ




ライブラリ
airxmail(en)
AIR版メール送受信ライブラリ
airxzip
AIR版ZIP圧縮・解凍ライブラリ
執筆書籍
本、雑誌等

WEB記事:CodeZine
執筆記事はこちら
カレンダー
2009年4月
« 3月   5月 »
 12345
6789101112
13141516171819
20212223242526
27282930  

カスタム検索
RSS
Add to Google < !–adsense–>
アーカイブ
カテゴリ
にほんブログ村 IT技術ブログへ