- PR -

[jdk1.3.1]全角文字を指定バイトで区切る方法

投稿者投稿内容
シュン
ぬし
会議室デビュー日: 2004/01/06
投稿数: 328
お住まい・勤務地: 東京都
投稿日時: 2004-03-18 11:02
引用:

R-55さんの書き込み (2004-03-17 14:31) より:

String#getBytesはプラットフォームのデフォルト文字セットを使用するので
半角文字は1バイトになりませんか?



あー、そうでしたね…すみません、間違いでした。
Cluster
ぬし
会議室デビュー日: 2003/03/06
投稿数: 289
お住まい・勤務地: 大阪
投稿日時: 2004-03-18 11:36
引用:

R-55さんの書き込み (2004-03-17 14:31) より:

String#getBytesはプラットフォームのデフォルト文字セットを使用するので
半角文字は1バイトになりませんか?



全角文字も、キャラクタセットによってバイト数が違ったと思うのですが、
このあたりは大丈夫なんでしょうか?
(たしか、EUCやUTF-8は全角文字(の大部分)が3バイトのはず・・・)
実行するプラットフォームによって、結果が変わってきそうなんですが
uk
ぬし
会議室デビュー日: 2003/05/20
投稿数: 1155
お住まい・勤務地: 東京都
投稿日時: 2004-03-18 12:24
引用:

Clusterさんの書き込み (2004-03-18 11:36) より:
(たしか、EUCやUTF-8は全角文字(の大部分)が3バイトのはず・・・)


EUCは通常の(いわゆる)全角文字は2バイト、半角カナが2バイト、補助漢字が3バイトですね。
#半角カナと補助漢字はシングルシフトを使うため
Cluster
ぬし
会議室デビュー日: 2003/03/06
投稿数: 289
お住まい・勤務地: 大阪
投稿日時: 2004-03-18 13:28
引用:

ukさんの書き込み (2004-03-18 12:24) より:

EUCは通常の(いわゆる)全角文字は2バイト、半角カナが2バイト、補助漢字が3バイトですね。
#半角カナと補助漢字はシングルシフトを使うため



ご指摘ありがとうございます。
「大部分」じゃなくて「一部」でしたね。
うーん、生半可な知識で書き込むとすぐにボロが出ちゃうなぁ(爆)
R-55
常連さん
会議室デビュー日: 2003/03/13
投稿数: 29
投稿日時: 2004-03-18 13:43
R-55です。
確かにClusterさんの言う通り環境依存になってしまいますね。
うっかりしていました。

ですがこのスレッドの目的からすると何らかの文字コードに限定して
処理したいようなのでこれでいいということでしょうか。

スキルアップ/キャリアアップ(JOB@IT)