mysql:10641
From: MORIYAMA Masayuki <MORIYAMA Masayuki <msyk@xxxxxxxxxx>>
Date: Fri, 10 Dec 2004 01:20:53 +0900
Subject: [mysql 10641] Re: 新規キャラクタセットの名称
森山です。 On Wed, 8 Dec 2004 22:52:57 -0800 "Shuichi Tamagawa" <shuichi@xxxxxxxxxx> wrote: > ユーザー定義文字の部分については、未対応でした。 > cp932 -> Unicodeのマッピングがファイルになっているものは > どこかにありますでしょうか? テーブルで持つよりもコードを書いて変換した方がプログラムサイズの節約に なると思いますが、次の Perl スクリプトでユーザ定義文字のみの cp932 - Unicode 変換表を作成できます。 ------------------------------------------------------------------------ #!/usr/bin/perl foreach my $c1 (0xF0..0xF9) { foreach my $c2 (0x40..0x7E, 0x80..0xFC) { my $u = ($c1 - 0xF0) * 188 + ($c2 - 0x40 - (0x7E<$c2)) + 0xE000; printf("0x%02X%02X\tU+%04X\n", $c1, $c2, $u); } } ------------------------------------------------------------------------ > > (4) Windowsの日本語EUCと eucJP-ms > > > > Windowsの日本語EUC は、Microsoft Windows Codepage 51932 というものな > > のですが、これは一部、eucJP-ms とは互換性がありません。 > > LAMP(Linux,Apache,MySQL,PHP)環境のように Web ブラウザから受け取った > > 日本語を DB に格納する場合、HTML の文字コードに、eucJP-ms を使ってし > > まうと、文字コード変換で文字化けが発生するので注意が必要となります。 > > 対応策としてはどのようなことがあるでしょうか? Windows の文字セットを扱う必要がある場合は、HTML の文字コードは、CP932 か UTF-8 にするという事が対策として考えられます。 UTF-8 は使用するブラウザによって「〜」などで文字コード変換の際に文字化 が発生するので、HTML の文字コードとして最も安全なのは CP932 という事に なるでしょう。 次のような構成であれば、Codepage 51932 との変換は必要なくなるので問題 を回避できるというわけです。 HTML(web) DB CP932 / UTF-8 ⇔ CP932 / eucJP-ms / UTF-8 ‖森山 将之 (MORIYAMA Masayuki) ‖e-mail: msyk@xxxxxxxxxx
10615 2004-12-07 16:41 ["Shuichi Tamagawa" <] 新規キャラクタセットの名称 10617 2004-12-08 10:28 ┗[EBIHARA Yuichiro <ui] 10625 2004-12-08 14:16 ┣[SATOH Fumiyasu <fumi] 10635 2004-12-09 01:49 ┃┗[EBIHARA Yuichiro <ui] 10636 2004-12-09 07:02 ┗[Shuichi Tamagawa <sh] 10639 2004-12-09 13:05 ┗[MORIYAMA Masayuki <m] 10640 2004-12-09 15:52 ┗["Shuichi Tamagawa" <] -> 10641 2004-12-10 01:20 ┗[MORIYAMA Masayuki <m] 10643 2004-12-10 09:38 ┗[Shuichi Tamagawa <sh]