Javaの文字コードについてのまとめ

Javaの文字コード
  • このエントリーをはてなブックマークに追加
  • Pocket

Javaの文字コードは基本的にUnicodeになる。

このページでは文字化けの原因となる文字コードとは?についての簡単な説明とJavaでの文字コードのTips的な話についてまとめてみた。参考にしていただければと思う。

文字コードとは?

コンピュータ内部で文字はどのように扱われているかと言うと、文字ひとつひとつに数値が割り当てられている。この文字に対して割り当てられた数値のことを文字コードと呼んでいる。

文字コードには色々な業界規格がある。この業界規格に名前が付けられている。有名なものではシフト・ジス(Shift-JIS)とか、ユニコード(Unicode)などと呼ばれるものがある。Javaは、たくさんある規格の中でUnicodeを使っている。

Unicodeには、基本ラテン文字(英数字)に加えて、様々な言語に使われている文字が含まれている。Unicodeに含まれる言語のいくつかを選んで紹介しよう。言語ごとの文字の数に応じて文字コードの範囲が決まっている。このため、漢字の文字コード範囲は他の言語の文字に比べれば多い。

文字

文字コード範囲

基本ラテン文字

0000-007F

ABC

ギリシャ文字

0370-03FF

αβγ

ひらかな

3040-309F

あいう

カタカナ

30A0-30FF

アイウ

漢字

3190-319F

亜伊宇

では、Unicodeの「A」の文字コードで表すと16進の41になる。また、「B」は10進の42になる。実際にプログラムで確かめてみよう。

ABを文字コードで表示する

実行結果

プログラムの説明

それでは簡単にプログラムの解説をしておこう。

  • [1] char型変数characterAに文字Aを代入する。
  • [2] char型変数characterBに文字Bを代入する。
  • [3] characterAの整数値を16進数で表示する。
  • [4] characterBの整数値を16進数で表示する。

確かに、期待したとおりのコードが表示される。しかし、実はShift-JISも「A」は10進の65、「B」は66である。これでは、Unicodeなのか違いが分からない。文字コードの違う文字で試しみよう。以下の「あ」と「い」では、文字コードが違うことが分かるだろう。

文字

Unicode(16進)

Shift JIS(16進)

3042

82A0

3044

82A2

実際に、プログラムで確認しておこう。

「あい」を文字コードで表示する

実行結果

確かに、Javaの文字がShift JISではなくて、Unicodeだということが分かる。

Unicodeを使って文字を設定する

プログラムのコードで文字を設定したい場合に、文字コードを使って文字を設定することができる。キーボードにない文字や読みが分からない文字でも、文字コードを調べれば文字を設定できる。

書き方の基本はこうだ。

\u0000 ← 0000の部分に16進のUnicodeの値を設定する

例えばギリシャ語の「β」を入力したい場合、Unicode文字コード表から文字コードを調べて、その値を文字として直接設定する。文字列の場合、文字列の中に直接Unicodeを書くことができる。つまり、文字列の中にUnicodeをその書き方で挿入することができる。具体的には、サンプルプログラムを見てほしい。

Unicodeを使って文字を設定するサンプルプログラム

このサンプルプログラムは、Unicodeを使ってギリシャ語の「β」を文字に、「θε」を文字列に設定している。

実行結果

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] char型変数characterBetaに文字コードで「β」を表現した文字を代入する。
  • [2] String型変数textに文字コードでギリシャ文字「θ」と「ε」を表現した文字列を部分的に代入する。
  • [3] 文字列characterBetaを表示する。
  • [4] 文字列textを表示する。

まとめ

このページではJavaの文字コードについてまとめてみた。参考にしていただければと思う。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する