アプリ版:「スタンプのみでお礼する」機能のリリースについて

eucコードで半角カナは2バイト表現、s-jisコードは1バイト表現と認識しています。
eucコードで保有するデータが40バイトとした場合、
s-jisコードで保有するとしたら、単純に20バイトとすることで影響はありますでしょうか?

A 回答 (6件)

>その場合、eucコードが半角カナ、英数字、記号混在の場合、(全角漢字は含みません)40バイト⇒20バイトへ変更しても問題ないかどうかなのですが、漢字が含まれなければ、40バイト⇒20バイトへ変更しても問題ないのでしょうか?



全角漢字がない場合、例えば英数字、記号のみの場合は、EUCコードとASCIIコードは同じになります。従って、EUCの英字1文字が、s-jisのの英字1文字になります。
従って、EUCでは英字40文字が40バイトの領域に格納できます。これを格納するためには、s-jisも40バイト必要です。
    • good
    • 0
この回答へのお礼

ありがとうございました。
疑問も解決できました。

お礼日時:2008/08/12 17:22

>EUCには、半角カタカナというコードはありません。



ありますけど。
きちんとハンドリングできないツールやアプリがほとんどいうだけです。

EUC-JP - Wikipedia
http://ja.wikipedia.org/wiki/EUC-JP
文字コードの話
http://euc.jp/i18n/charcode.ja.html

JISやシフトJISとの大きな相違点は、半角カタカナが冷遇されていることです。 JIS漢字コードの各バイトのMSBを1にすることにより漢字を導入したため、これと重複する半角カタカナは補助的な扱いとなり、 0x8Eのプレフィクス付きの2バイトコードになっています。また、0x8Fのプレフィクスにより補助漢字も表現でき、これは3バイトになります。
    • good
    • 0
この回答へのお礼

ありがとうございました。
参考にさせていただきます。

お礼日時:2008/08/12 17:22

EUCには、半角カタカナというコードはありません。


S-JISは、大昔、アスキーが、MS-DOSの日本語をやったときに、導入した漢字コードで、これは、半角カタカナと共存が可能です。

ですので、半角カタカナのS-JISまたは、JISを拾ってきた場合、EUCでは、ぞれを全角化して、もつしかありません。
    • good
    • 0
この回答へのお礼

ありがとうございました。
今後の参考にさせていただきます。

お礼日時:2008/08/12 17:24

>eucコードには、半角カナ、英数字、記号が混在しています。


>混在していると、そのままのバイト数(40バイト)にしておかなければ、領域不足になるということでしょうか?

はい。全て全角漢字がeucコードに入っていると、全角漢字は1文字につき2バイトをつかいますので、eucコード側では、20文字が格納可能です。一方s-jis側でも、この全角漢字は、1文字につき2バイトをつかいますので、40バイトが必要です。20バイトの場合、10文字しか格納できません。

この回答への補足

ありがとうございます。
今回の質問の背景として、
データベースのある項目をeucコードからs-jisコードへ変更しようとしています。
その場合、eucコードが半角カナ、英数字、記号混在の場合、(全角漢字は含みません)40バイト⇒20バイトへ変更しても問題ないかどうかなのですが、漢字が含まれなければ、40バイト⇒20バイトへ変更しても問題ないのでしょうか?

補足日時:2008/08/12 14:06
    • good
    • 0

#1のかたが言ってますように、eucコードに何が入るかが、決定しないと、決められないとおもいます。

eucコードに全角漢字が入る場合は、20バイトでは足りなくなります。

この回答への補足

どうもありがとうございます。
eucコードには、半角カナ、英数字、記号が混在しています。
混在していると、そのままのバイト数(40バイト)にしておかなければ、
領域不足になるということでしょうか?

補足日時:2008/08/12 13:02
    • good
    • 0

全て半角カナが入っていればいいと思いますが、英数字、記号を含んでいるとサイズが合わないです。

この回答への補足

どうもありがとうございます。
英数字・記号を含んでいると、なぜ合わなくなってくるのでしょうか?

補足日時:2008/08/12 13:00
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!