- ベストアンサー
JISコードかASCIIコードか、EUCコードか半角カナか
alphionの回答
- alphion
- ベストアンサー率19% (27/136)
秀丸のソースが公開されているので参考になると思うのですが
関連するQ&A
- コードに対する疑問(eucコードとs-jisコード)
eucコードで半角カナは2バイト表現、s-jisコードは1バイト表現と認識しています。 eucコードで保有するデータが40バイトとした場合、 s-jisコードで保有するとしたら、単純に20バイトとすることで影響はありますでしょうか?
- 締切済み
- その他(プログラミング・開発)
- EUCコードをS-JISコードに変換したい
VB(4.0です(^_^;))のプログラムの中でEUCコードで英数カナ日本語混在のファイルを扱います。レコード毎、又はフィールド毎にS-JISコードに変換しながら処理をしたいのですが、その方法をご存知の方、教えて下さい。
- ベストアンサー
- Visual Basic
- JIS、SHIFT-JIS、EUCはなぜできた?
教えてください。 文字コードについて調べています。アルファベットはASCIIコードで統一されているために、特に問題がなく、日本語にも JISコードという標準化されているコードがあります。 なので、基本的にはこれをみんなが使えば、文字化けなどという問題には悩まされなくてすむはず。 なのに、なぜ Windows では Shift-JISなどという独特な文字コードを使い、UNIX系では EUCコードを使っているのでしょう。いったい、どの文字コードが一番初めにできて、なぜそれで標準化を図ることができなかったのかなど、日本語文字コードに関する歴史について、ご存知の方、ぜひ教えていただければ幸いです。
- ベストアンサー
- その他(OS)
- C言語でJISからEUCへ変換するプログラム
C言語で文字コードをJISからEUCへ変換するプログラムを教えてください。 javaしか知識がなく、C言語は無知のため、時間もなく困っております。。。 どなたか教えていただけると幸いです。 よろしくお願いします!
- 締切済み
- C・C++・C#
- Jcode.pmでの半角カナ→全角カナ変換
Webフォームから取得したデータに半角カナが含まれていた場合の文字化け対策として、Jcode.pmを使用して、下記のようにEUCに変換しています。 use Jcode; $euc_string = jcode($form_input)->h2z->euc; 原理的には間違ってはいない筈ですが、ほとんどの場合、$form_inputの文字コードの判別に失敗(恐らく半角カナをEUCと誤認)し、文字化けしてしまいます。誤認しないように、下記の様に記述すれば、正しく全角カナに変換してくれます。 use Jcode; $euc_string = jcode($form_input,"sjis")->h2z->euc; ただ、入力コードがシフトJISとは限りませんので、この記述は好ましくないと思っています。 半角カナの文字化けは、webフォームを作られた方なら皆さん経験されていると思うのですが、どうされているのでしょうか? Jcode.pmの文字コード判別は、半角カナが混じっていた場合、かなり長い文字列でないと判別に失敗するようなので、フォームで短い文字列(名前等)を入力させて処理させた場合、ほとんど上手く動かないようなのですが?
- ベストアンサー
- Perl
- JISコード変換について
String str = "アイウエオ"; byte test[] = moji.getBytes("ISO2022JP"); String ret = new String(test); 上記のプログラムで半角カナをJISコードに変換すると 文字化けしているのですが、文字化けしないようにするにはどうしたらよいでしょうか。 なお、JISコードの String test = "アイウエオ"; ← "アイウエオ"はJISコード(文字化け無しの半角カナ文字) String ret = new String(test .getBytes("ISO2022JP"),"JISAutoDetect"); これで、文字化けせずUnicodeに変換できたのですが、単純に逆に変換しただけでは、半角カナの文字は、JISコードに変換すると文字化けしてしまうのでしょうか? どなたか教えて頂けないでしょうか?
- ベストアンサー
- Java
- Javaで、半角カナを2バイトとしてカウントしたい
JavaでSJISで入力された文字列(全角、半角、英字、記号等混在)の桁数チェックで、 入力された半角カナのバイト数を、2バイトとみなしてカウントしたいと考えています。 例えば 全角の"テスト"の場合、バイト数は6 半角の"テスト"の場合も、バイト数は6 Javaで以下の様にコーディングしたところ、半角カナ部分はとりあえずうまく行ったのですが、 System.out.println 半角の"テスト".getBytes("EUC-JP").length; ->6 特殊な文字「まるの1、まるの2」等で試すと、特殊な文字のバイト数が1バイトとして カウントされてしまいます。 ※まるの1、まるの2は、この質問フォームで入力できないのでこの記載としています。 以降は(1),(2)と記載します。いずれも全角1文字の文字のことです。 System.out.println "(1)".getBytes("EUC-JP").length; ->1 ※希望結果は2バイト System.out.println "(2)スト".getBytes("EUC-JP").length; ->5 ※希望結果は6バイト 特殊な文字「(1)、(2)」や半角カナ(2バイトとしてカウント)を含めて、 簡単にバイト数をカウントすることはできないでしょうか。
- 締切済み
- Java
- 半角カナから全角カナへ
お世話になります。 今、フォームから入力された半角カナを全角カナへ変換しようとしているのですが、どうしてもうまく行きません。 処理は以下のようにしています。 jcode::convert(\$str, 'euc'); if($str =~ /[\xA1-\xDF]/){ jcode::h2z_euc(\$str); } (1)まず、半角カナが含まれているかのチェックで[\xA1-\xDF]を使用していますが色々調べたところ、実際は (?:\x8E[\xA6-\xDF]) が正しいようなのですが、この場合文字数が少ないとひっかかってくれません。例えば半角のア1文字や2文字など。また、文字数が多くても半角英数と半角カナが混在しているとひっかからない場合もあります。 上記の式だとひっかかってくれますが、この判定で構わないのでしょうか。 (2)上記の式できちんと置換されるものとされないで漢字のように文字化けするものと出てきてしまいます。 例えば「インターフェース」などという半角は全滅です。 「バージョン」などは大丈夫でした。 間違いなど教えて頂ければと思います。 宜しくお願い致します。
- ベストアンサー
- Perl
- VBA Shift-JISをJISに変換すると半角カナが全角に変換されてしまう
Excelから全銀フォーマットファイル(文字コード:JIS)を出力する目的で、VBAでADODB.Streamを利用して下記のサンプルコード書いた時、 半角カナが全角カナに変換されてしまう現象が解消できません。 [サンプルコード] With CreateObject("ADODB.Stream") .Open .Position = 0 .Type = 2 .Charset = "iso-2022-jp" .WriteText "(半角ア)、ア、1、1、a、a" .SaveToFile "C:\result.txt", 2 .Close End With [C:\result.txtの内容] ア、ア、1、1、a、a 解決策をご教授お願いいたします。
- ベストアンサー
- その他(プログラミング・開発)