[Air/Flex]数値文字参照の変換

 洗濯物のポケットにレシートが入っているのに気づかずに洗ってしまったとです。
 ヒロシです。(あえて)

 URLLoaderで取得したデータに数値文字参照が含まれていました。
 表示するだけなら、LabelやTextAreaのhtmlTextプロパティにセットしてやればOKなのですが、htmlTextプロパティの無いコンポーネントへの表示や、データの編集・保存などのために直接文字に変換したいという場合のための手段としては使えませんし、Flexにもそういうメソッドは用意されていないようです。(見つけられてないだけかも?)
 ということで、Unicode・16進数表記の数値文字参照限定ですが、自前の変換処理を作成して対応しました。

var str:String = "秘密結社ぎゅう☆ぎゅう倶楽部";
var result:String = str.replace(/&#x([0-9a-fA-F]+);/g,function():String{return String.fromCharCode(Number("0x" + arguments[1]));});

 変換処理といってもたいしたものじゃなくて、数値文字参照(&#x●●●●;)から文字コード部分(●●●●)を抜き出して、String.fromCharCodeで文字に変換する処理を繰り返しているだけです。

 洗う前にはポケットの中身をしっかり確認。(でもまたやる)

トラックバック(0)

このブログ記事を参照しているブログ一覧: [Air/Flex]数値文字参照の変換

このブログ記事に対するトラックバックURL: http://ushi.donburi.net/mt/mt-tb.cgi/14

コメントする

このブログ記事について

このページは、くわが2008年5月27日 16:44に書いたブログ記事です。

ひとつ前のブログ記事は「修羅場でも更新(吉野家でも割引券を配布中、の巻)」です。

次のブログ記事は「[Air/Flex]UTF-8以外のエンコーディングを扱う」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 6.0.3
ぎゅう♪ぎゅう♪ぎゅう♪ぎゅう♪ ぎゅう♪ぎゅう♪ ぎゅう♪ぎゅう♪