![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
No.1ベストアンサー
- 回答日時:
JAVAは知らないので、一般論を書きます。
+57というのがキーワードです。
■解説
UTCが定める、ひらがな&カタカナの文字コードブロック範囲は次の通り。
ひらがな 3040 ~ 309F(HEX)
カタカナ 30A0 ~ 30FF (HEX)
上記は16進表記です。あとは、ひらがなとカタカナの「シフト量」が分かれば良いだけです。そのためには、各文字の文字コードを具体的に見てみましょう。
文字コードは、Windowsに標準で付属する「文字コード表」により確認することができます。
まず、文字コード表は、[スタート] ボタンをクリックし、[すべてのプログラム]、[アクセサリ]、[システム ツール] の順にポイントし、[文字コード表] をクリックします。
そして[フォント]ドロップダウン・リストボックスで「MSゴシック」などを選択してから文字をマウスで選択すれば、その文字コードが画面一番下のステータス・バー部分に表示されます。
たとえば「あ」と「ア」、「ん」と「ン」を見てみましょう。
あ:3042(HEX)
ア:30A2(HEX)
ん:3093(HEX)
ン:30F3(HEX)
これにより、次のことが分かります。
「あ」に+87だけシフトすれば「ア」になる
「ん」に+87だけシフトすれば「ン」になる
他の かな文字についても同じです。つまり+87(10進数)これは16進数だと+57となります。
ですので、ひらがな→カタカナ変換は、入力された文字列の文字コードを57(HEX)だけ加算して、それを出力すれば良いワケです。
また、エラー処理として、入力文字・出力文字それぞれがひらがな・カタカナの範囲にあることをチェックする前処理ルーチンも必要でしょう。
ひょっとしたらちゃんと関数があるかもしれませんが、上述した原理を知っていれば、どの言語でも使えます。
以上です。
No.3
- 回答日時:
No.2
- 回答日時:
参考URLに文字コードに関することをちょこっと書いてます。
カタカナ変換するクラスのソースとか置いてあるので参考になるかと思います。
参考URL:http://siisise.net/java/classes/net/siisise/lang …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- その他(Microsoft Office) Microsoft Excelの文字変換で教えて下さい。 商社勤務です。 営業マンと言う言葉と○万な 2 2022/04/23 11:14
- Excel(エクセル) エクセルシート中の全角英数字を半角に変換したい 4 2022/07/07 13:14
- フリーソフト フォルダ、ファイル名の一括変換について 3 2023/03/16 09:23
- ノートパソコン PCの漢字変換の変な癖?に困っています。 3 2022/10/11 21:27
- 数学 関数論で一次変換を学ぶ意義 1 2022/06/03 15:59
- 数学 数学の質問です。 関数f(t)のフーリエ変換をF(ω)=∫[-∞→∞]f(t)exp(-iωt)dt 1 2023/07/29 01:08
- Windows 10 なぜか全角カタカナ入力になってしまう (USキーボード、「Alt」 + 「`」) 1 2022/06/29 13:22
- ノートパソコン ファンクションキー F7 3 2022/10/27 17:59
- その他(Microsoft Office) Excelの時間変換について 300(分)→5(時間) を5:00とする表記する方法は、ありますでし 3 2022/07/29 16:49
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ダブルクォーテーションのrepla...
-
javaで質問です。 文字列2023/2...
-
ソース型、ターゲット型につい...
-
JavaのStringクラスに「外字」...
-
スマホでテキストボックスの随...
-
wsprintf関数の使い方について
-
配列にnullを代入すると、null...
-
EXCEL VBA で、0から?1から?
-
IF関数でEmpty値を設定する方法。
-
このプログラミング誰か教えて...
-
javaの再帰関数を用いるプログ...
-
パソコンキーボードで時分秒を...
-
複数のテキストボックスに同じ...
-
Javaで改行などが出来ないのです。
-
TextAreaでの文字の色
-
BOOL値を逆にしたい
-
ウィンドウなしで画像表示
-
テキストエリアで改行する
-
java
-
Enumのname()とtoString()の違...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
javaで質問です。 文字列2023/2...
-
ダブルクォーテーションのrepla...
-
Path型をString型へ変換する(Java)
-
int型のゼロ埋め
-
javascriptで文字列のsjis利用...
-
Visual Basic でのコードをASCI...
-
カタカナをローマジに変換する。
-
C言語32bitから64bitの移行につ...
-
UTF-8とUnicodeの互換性
-
エクセルVBAで「〜」が表現でき...
-
JavaのStringクラスに「外字」...
-
substring バイト単位でやりたい
-
TEXTAREAからのデータを改行入...
-
javaで「全角が含まれているか...
-
javaの初歩的な質問です。
-
byte[] を long,float とかに...
-
Windows-31Jからutf-8への変換...
-
COBOLで半角カナを全角カナに変換
-
文字列の比較
-
IBM漢字コード⇒SJIS変換方法
おすすめ情報