[AS3] Shift-JIS のXML読み込みについての解決法

| | Comments (0) | TrackBacks (0)
前のエントリに書いたShift_JISの解決法が見つかったのでメモ

useCodePageをtrueにするのではなく、バイナリでByteArrayに読み込んで、readMultiByteでShift_JISとして読めばよいみたい。
以下にサンプルを載せときます。サンプルではScrollBarのコンポーネントを使ってます。


 Custom Arguments...)
	*/
	public class sjisLoader3 extends Sprite
	{
		public var area_txt:TextField;
		public var scrollBar:UIScrollBar;
		private var urlLoader:URLLoader;
		
		private const DATA_PATH:String = "data/sjistext.txt";
		
		public function sjisLoader3()
		{
			urlLoader = new URLLoader();
			urlLoader.addEventListener(Event.COMPLETE, _loadedData);
			urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
			urlLoader.load(new URLRequest(DATA_PATH));
		}
		
		private function _loadedData(e:Event)
		{
			trace("loaded!!uho");
			
			var byteData:ByteArray = new ByteArray();
			byteData = ByteArray(urlLoader.data);
			var txtData:String = byteData.readMultiByte(byteData.length, "shift_jis");
			
			area_txt.text = txtData;
			scrollBar.update();
		}
	}
	
}
これを使えば色々な文字コードからUTF-8に変換できる見たいですね。逆はできないけど。

0 TrackBacks

Listed below are links to blogs that reference this entry: [AS3] Shift-JIS のXML読み込みについての解決法.

TrackBack URL for this entry: http://blog.chikathreesix.com/mt/mt-tb.cgi/15

Leave a comment

Archives