EUC-JPとCP51932の半角英小文字について

このQ&Aのポイント
  • EUC-JPとCP51932の半角英小文字についての正確な情報を調査しました。
  • 具体的には、0x5Cおよび0x8Eの文字の表現について、どちらが正しいのか明確になりませんでした。
  • さらに、EUC-JP亜種の定義に関連する規格書をWeb上で見つけることができませんでした。
回答を見る
  • ベストアンサー

eucjp-msとCP51932の半角英小文字について

eucjp-msとCP51932の半角英小文字について お世話になります。 表題のEUC-JPの2つの亜種について、0x21~0x7Eの領域が「両方ともJIS X 0201ラテン文字」と書かれている資料(Legacy Encoding Project)と、「eucjp-msはJIS X 0201左側(ローマ字)でCP51932はUS-ASCII」と書かれている資料(通信用語の基礎知識)がありますが、どちらが正しいのでしょうか。 具体的にいうと、0x5Cは円記号¥と逆斜線\どちらでしょうか。0x8Eは ̄とチルダ~どちらでしょうか。 また、これらのEUC-JP亜種の定義について書いてある規格書はWebで見られるでしょうか。 UnicodeとJISはすぐに見つかりましたが、EUC-JPは見つかりませんでした。 細かいですがよろしくお願いします。。。

質問者が選んだベストアンサー

  • ベストアンサー
  • jeee
  • ベストアンサー率52% (119/227)
回答No.2

JIS X0201にISO646に関する記述がありますので、ISO646IRVがASCIIになります。 次で、「JIS規格番号からJISを検索」に「X0201」を入力してください。 http://www.jisc.go.jp/app/JPS/JPSO0020.html JISX0201とISO646IRVの関係は、つぎを参照。 http://www.kt.rim.or.jp/~aotaka/pc/character2.htm NECのPCー98系は、JISのオーバーラインがチルダになっています。 その他のコードは、つぎから参照していってください。 http://www.wdic.org/w/WDIC/eucJP-open

TYWalker
質問者

お礼

ありがとうございます! 助かりました。

その他の回答 (1)

  • jeee
  • ベストアンサー率52% (119/227)
回答No.1

eucJP-msでは、円記号¥と逆斜線\のどちらも存在する。標準は多分逆斜線\ http://www2d.biglobe.ne.jp/~msyk/charcode/cp932/eucJP-ms.html EUC コードセット0 (ASCII)のときは、逆斜線\ EUC コードセット1 (JIS X 0208 + NEC特殊文字 + ユーザー定義文字)のときは、円記号¥ EUC-JPでも円記号¥と逆斜線\のどちらも存在する。標準は多分逆斜線\ システムによって異なる。 http://d.hatena.ne.jp/nurse/20100327 従い、円記号¥と逆斜線\を識別したい場合は、UnicodeのUTF8などを使用する。

TYWalker
質問者

お礼

ありがとうございます。 0x8Eは~(チルダ)と ̄(オーバーライン)といずれでしょうか。 あと、CP51932ではどのようでしょうか。 今後はUTF-8が標準にならざるを得ないでしょうね。 しかし、過去データがあるので悩ましいところです。 ありがとうございました!

関連するQ&A

  • 文字コード変換

    PHP4.4を使っています。 プログラム中の文字列変数値「標の鷹」から、 http://xxx.cgi?prm=%95W%82%CC%91%E9 という文字列(リンク)を生成したいのですが、 http://xxx.cgi?prm=�W�̑� のようになってしまいます。 ソースは以下の通りです。 $img_url = "http://xxx.cgi?prm=".$row[0]; mb_detect_order("ASCII, JIS, UTF-8, eucJP-win, EUC-JP, SJIS-win, SJIS"); $enc = mb_detect_encoding($row[0]); // この時点で$row[0]=「標の鷹」 if ( ($enc != "ASCII") && ($enc != "JIS") && ($enc != "UTF-8") && ($enc != "eucJP-win") && ($enc != "EUC-JP") && ($enc != "SJIS-win") && ($enc != "SJIS") ) {   echo "未知の文字コードが入力されました。<br />\n";   exit; } $url = mb_convert_encoding($url,"SJIS",$enc); echo "url = ".$img_url."; ※ちなみに、このコードが書いてあるphpファイルはutf8です。

    • ベストアンサー
    • PHP
  • 文字コードEUC-JPは、文字集合なのか符号化方式なのか?

    文字コードEUC-JPは、文字集合なのか符号化方式なのか? 文字コードの文字集合・符号化方式についてWikipediaをみて 勉強をしていたのですが、途中で分からなくなりました。 とりあえず、文字集合・符号化方式それぞれの具体例を把握することにより まずはイメージをつかもうとしていました。 文字コード - Wikipedia http://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89 「2(符号化)文字集合、文字符号化方式」の内容についてです。 以下の部分を読んだところ # 日本語には JIS X 0208 というひとつの文字集合に対して # ISO-2022-JP (JIS コード等と呼ばれることが多い)、EUC-JP、 # Shift_JIS など複数の符号化方式が存在する。 以下だと解釈しました。 →文字集合 :JIS X 0208 →符号化方式:ISO-2022-JP(JISコード)、EUC-JP、Shift_JIS 一方以下の部分を読んだところ # また、それぞれ異なる文字集合を同じ符号化方式とする関係もあり、 # 例えば符号化方式 EUC に対して EUC-JP、EUC-KR、GB2312 (EUC-CN) # などがある。 以下だと解釈しました…。 →文字集合 :EUC-JP、EUC-KR、GB2312 (EUC-CN) →符号化方式:EUC で、「EUC-JP」が文字集合なのか符号化方式なのか 分からなくなってしまいました。Wikipediaの記述が間違っているのか、 「EUC-JP」は文字集合でもあり符号化方式でもあるのか分かりません。 「EUC-JP」が文字集合なのでしょうか? それとも符号化方式なのでしょうか? その両方であるのでしょうか? Wikipediaの記述が間違っているのでしょうか? この辺について教えてください。よろしくお願いします。

  • PHPの文字化け

    PHP4.3.2 Windows2000 PostgreSQL RedHat Linux DBから取得した値をCSVファイルに書き出します。 この時に日本語が文字化けをしてしまうのです。 php.iniの設定を変えれば、良いのでしょうか? 初歩的な質問で申し訳ありませんが、 よろしくお願いします。 php.iniの設定内容 default_charset = "SJIS" mbstring.language = Japanese mbstring.internal_encoding = eucJP-win mbstring.http_input = ASCII,JIS,Windows-31J,UTF-8,EUC-JP mbstring.http_output = Windows-31J mbstring.detect_order = ASCII,JIS,Windows-31J,UTF-8,EUC-JP mbstring.substitute_character = none DBの設定内容 List of databases Name | Owner | Encoding -----------+----------+---------- test | postgres | EUC_JP

    • ベストアンサー
    • PHP
  • TeraPadの文字コード

    TeraPadの文字コードについて教えてください。 1. TeraPadで扱える文字コードは Shift-JIS、JIS、EUC、Unicode、UTF-8、UTF-8N の6種類あるようですが、このEUCとEUC-JPは 同じものですか? 2. Shift-JISで保存すると、TeraPadの下の部分に 表示される文字コードがSJISとなります。 これはShift-JISのことですか? 3. 短い文章では文字コードを誤認識する場合も あるようですが、どうしたら正しく認識 させられますか? 指定した文字コードで保存できず困っています。

  • 文字コードでなる文字化けの直し方お願いします。

    海外のWEBHOSTサーバーの WE○NGというところを使っているのですが。 HTMLの記述で charset="Shift_JIS" とすると日本語が文字化けします。 Shift_JIS を EUC-JP iso2022-jp UTF-8 ASCII と色々変えてみても、全部日本語が文字化けしました;; 文字化けにならない、日本語が表示されるにはどうしたらよいでしょうか。 お知りの方 よろしくお願いします。

  • 漢字に関する規定がない、文字コード体系について教えて下さい!

    文字コード体系の中で、漢字に関する規定がないものを探しています。 ご存知の方がみえたら教えて下さい。。。。  (1)EUC-JP  (2)ASCII  (3)Shift_JIS  (4)JIS  (5)Unicode (1)~(5)の中で該当する文字コードはどれになるのでしょうか? 回答お願いします! 解説も添えてもらえると助かります^^;

  • 機種依存文字

    いつもお世話になっております。 機種依存文字について質問させていただきます。 CSVファイルをアップロードして、文字コードがEUCのデータベースに 格納したいと思っております。(PHPの文字コードもEUCになっております。) 「(はしごたか)」「(たつさき)」などの機種依存文字が 文字化けをしてしまいます。 $name = mb_convert_kana(mb_convert_encoding($data[1], "EUC-JP", "Shift-JIS"), "KV") $name = mb_convert_kana(mb_convert_encoding($data[1], "eucJP-win", "Shift-JIS"), "KV") としても文字化けをしてしまいます。 また、以下の設定をしても文字化けは解消されません。 ini_set('default_charset', 'eucJP-win'); ini_set('mbstring.http_output', 'eucJP-win'); ini_set('mbstring.internal_encoding', 'eucJP-win'); 皆様、ご提示お願いいたします。 よろしくお願いいたします。 <環境> OS:Red Hat Linux PHP:Version 4.3.1 DB:MySQL 3.23.56

    • ベストアンサー
    • PHP
  • PHP+Postgres 「髙」が文字化け

    DB上に格納した文字列を取得し、PHPで出力すると、 「髙」(はしごだか)等、一部の文字が「□・」のような見た目に化けてしまいます。 環境は以下です。 Linux(CentOS 5) PHP 5.1.6 Apache 2.2.3 PostgreSQL 8.4.3 文字コードは以下です。 Postgres:EUC-JP PHPソース:EUC php.ini の[mbstring]はコメントのまま変更していません。 文字コードの変換を試してみたのですが、「髙」としては出力できませんでした。 Windows上では「CP51932」に変換すると正常に出力できましたが、Linux上ではやはり駄目でした。 mb_language("uni"); mb_internal_encoding("euc-jp"); mb_http_input("auto"); mb_http_output("euc-jp"); $str = "髙橋"; print(mb_convert_encoding($str, "EUCJP-win")); print(mb_convert_encoding($str, "EUCJP-win","EUC-JP")); print(mb_convert_encoding($str, "SJIS")); print(mb_convert_encoding($str, "SJIS","EUC-JP")); print(mb_convert_encoding($str, "SJIS-win")); print(mb_convert_encoding($str, "SJIS-win","EUC-JP")); print(mb_convert_encoding($str, "UTF-8")); print(mb_convert_encoding($str, "UTF-8","EUC-JP")); print(mb_convert_encoding($str, "EUC","SJIS")); print(mb_convert_encoding($str, "Unicode")); print(mb_convert_encoding($str, "Unicode","EUC-JP")); print(mb_convert_encoding($str, "UTF-8", "sjis-win")); print(mb_convert_encoding($str, "CP51932")); print(mb_convert_encoding($str, "MS932")); print(mb_convert_encoding($str, "MS932","EUC-JP")); print(mb_convert_encoding($str, "UTF-8","EUCJP-win")); print(mb_convert_encoding(mb_convert_encoding($str, "EUCJP-win" ), "UTF-8","EUCJP-win")); print(mb_convert_encoding(mb_convert_encoding($str, "EUCJP-win","EUC-JP"), "UTF-8","EUCJP-win")); print(mb_convert_encoding(mb_convert_encoding($str, "SJIS-win" ), "UTF-8","SJIS-win")); print(mb_convert_encoding(mb_convert_encoding($str, "SJIS-win","EUC-JP"), "UTF-8","SJIS-win")); print(mb_convert_encoding(mb_convert_encoding($str, "SJIS-win" ), "EUCJP-win","SJIS-win")); print(mb_convert_encoding(mb_convert_encoding($str, "SJIS-win","EUC-JP"), "EUCJP-win","SJIS-win")); http://blog.livedoor.jp/loopus/archives/50160285.html 上記サイトによると、解決法は「EUC-JPで出力しないこと」という事でしたが、 文字コードを変換して出力できるような事を書いているサイトもあり、結論が出せずにいます。 ソースを書き換えるのは避けたいのですが、いい方法がありましたらご教示ください。

    • ベストアンサー
    • PHP
  • 文字コードの利点・欠点について

    おはようございます。 文字コードには、大きく分けて4種類 ・JISコード ・S-JIS ・EUC ・Unicode がありますが、それぞれの利点・欠点を教えていただけますでしょうか。 あと、EUCはなぜ制御文字を使って、1バイト仮名や補助漢字の文字コードを割り当てているのかも教えてください。 よろしくお願いします。

  • 文字列について

    文字列をEUC-JPを用いてエンコードして保存したテキストをシフトJISにてデコードした場合に表示される文字を示せ。 JIS X 0208区点番号表は与えられています。 分かる方いれば是非教えてください。