PREV | PAGE-SELECT | NEXT

≫ EDIT

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

| スポンサー広告 | --:-- | comments(-) | trackbacks(-) | TOP↑

≫ EDIT

スクリプト更新(2012-02-14)

Lyric Show Modoki 0.9.3

ADODB.Streamで文字コードを自動判別(_autodetect_all)させると、BOMが削除されずに文字として取得されてしまうよう。1行目の文字数を数えていたら零幅文字の存在が確認できて気付いたが、もっと早く気付きたかった・・・

手動で削除するにも、まずバイナリデータを扱うインターフェイスがJavascriptにはないからVBScriptから引っ張ってくる必要がある。
それから読み込み時にBOMを調べてフラグを建てて、文字取得後に該当文字を削除する(バイナリスキップでBOMを読み飛ばすとUTF-8は大丈夫だがUTF-16LE,UTF16-BEでは文字が取得できなくなるから×)。

書き込み時にはCharsetのBOMが無条件で付加されるようで、BOMの削除漏れテキストを渡すとBOMが重複してしまうため、念のため重複時にBOMスキップ処理を行ったほうが良さそうと結構回りくどいことに。
ただ自分で文字コード判別は書きたくないので対応策があり使えるだけ良しか。

| foobar2000 | 21:58 | comments:0 | trackbacks:0 | TOP↑

COMMENT















非公開コメント

TRACKBACK URL

http://ashiato1.blog62.fc2.com/tb.php/68-dc6ec00d

TRACKBACK

PREV | PAGE-SELECT | NEXT

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。