【AS3】 Shift-JIS のXML読み込みについて

| | Comments (0) | TrackBacks (0)
ActionScript3.0のバグについてメモ

データ量が比較的多めのXMLで文字コードがShift-JISのものは、AS3では正しくパースできない読み込まれないことがあるようです。
useCodepageとかも無意味です。

成功する場合もあれば、失敗する場合もあります。
失敗した場合は、
「1088ルートエレメントに続くドキュメントのマークアップは整形式でなければなりません。」
というランタイムエラーが発生します。
失敗した場合、XMLが読み込まれた時点でXMLを出力すると、最後に謎の文字列が追加されていました。


これは、、困りましたね(笑)


追記
useCodePage = trueをfalseにするともちろん文字化けは起こりますが、謎の文字列が付与されることはなくなりました。
AS3でShift_JISを取り扱うこと自体にバグがあるようですね。
XMLについてのみ言及していましたが、テキストファイルなどでも同様のバグがあります。
また、サイズの少ないファイルにおいてこのエラーは発生しません。

どうしてもShift_JISファイルの読み込みが必要な場合は、useCodePage=trueにはせず、ファイルパスをphpなどに渡して、エンコードした文字列を受け取る形が良さそうです。

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/12

Leave a comment

Archives