2023年02月23日
Lazarusの文字化け対策
Lazarusの文字列はUTF8です。
そこにShiftJisを使おうとすると、最初の内はどうやっても勝手にUTF8になって文字化けして大変でした
windowsのコンソールアプリでwrite('漢字');でさえUTF8だから文字化けするのです
そしてShiftJisにいったん変換しても何かの呪いのように代入したり文字列連結すると文字化けする。
その仕組みがやっと分かりました。
LazarusのAnsiStringはコードページを変数内に持っていたのです。
そして文字定数はUTF8ですから文字列加算(連結)すればUTF8に変換されてしまう訳です。
そのあたりの細かい話をまとめてみました。
Lazarusの文字列変換
そこにShiftJisを使おうとすると、最初の内はどうやっても勝手にUTF8になって文字化けして大変でした
windowsのコンソールアプリでwrite('漢字');でさえUTF8だから文字化けするのです
そしてShiftJisにいったん変換しても何かの呪いのように代入したり文字列連結すると文字化けする。
その仕組みがやっと分かりました。
LazarusのAnsiStringはコードページを変数内に持っていたのです。
そして文字定数はUTF8ですから文字列加算(連結)すればUTF8に変換されてしまう訳です。
そのあたりの細かい話をまとめてみました。
Lazarusの文字列変換
タグ:文字列
【このカテゴリーの最新記事】
-
no image
-
no image
-
no image
-
no image
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/11876767
この記事へのトラックバック