「.NETでJISコードの半角カナを使いたい」の版間の差分
ナビゲーションに移動
検索に移動
(ページの作成:「.NETでJISコードの半角カナを使いたい 様々なシステム間で連携しようとすると避けては通れないのが文字コードである。 とく...」) |
|||
1行目: | 1行目: | ||
− | . | + | [[.NET]]でJISコードの半角カナを使いたい |
− | + | 様々なシステム間で連携しようとすると避けては通れないのが[[文字コード]]である。 | |
− | + | とくに[[ハードウェア]]の世界ではまだまだJISコードの最初期仕様「[[JIS X 0201]]」が使われている。 | |
− | + | いまだに[[アセンブラ]]を使っている人たちは文字は全て1バイトの範囲に収めたいからだ。 | |
− | + | 日本製のハードウェアは[[RS-232C]]からの出力に「[[JIS X 0201]]」で「半角カナ」を含めてくるなんてのはザラだ。 | |
いわゆる理化学系の検査機から出てくるレシートなんがまさにこれ。 | いわゆる理化学系の検査機から出てくるレシートなんがまさにこれ。 | ||
POSレジみたいに大量に売れるものではないので進歩も遅い。 | POSレジみたいに大量に売れるものではないので進歩も遅い。 | ||
11行目: | 11行目: | ||
.NETのJISコードには2種類ある。 | .NETのJISコードには2種類ある。 | ||
− | * iso-2022-jp | + | * '''iso-2022-jp''' |
** 半角カナなし。 | ** 半角カナなし。 | ||
** 有名なのはこれ。ほとんどのサイトで「JISコード」というとこれを紹介している。 | ** 有名なのはこれ。ほとんどのサイトで「JISコード」というとこれを紹介している。 | ||
** System.Text.Encoding.Convertで文字コードを変換する際に半角カナが含まれていると強制的に全角カナになる。 | ** System.Text.Encoding.Convertで文字コードを変換する際に半角カナが含まれていると強制的に全角カナになる。 | ||
− | * csISO2022JP | + | * '''csISO2022JP''' |
** 半角カナあり。 | ** 半角カナあり。 | ||
2018年3月9日 (金) 07:46時点における版
.NETでJISコードの半角カナを使いたい
様々なシステム間で連携しようとすると避けては通れないのが文字コードである。 とくにハードウェアの世界ではまだまだJISコードの最初期仕様「JIS X 0201」が使われている。 いまだにアセンブラを使っている人たちは文字は全て1バイトの範囲に収めたいからだ。 日本製のハードウェアはRS-232Cからの出力に「JIS X 0201」で「半角カナ」を含めてくるなんてのはザラだ。 いわゆる理化学系の検査機から出てくるレシートなんがまさにこれ。 POSレジみたいに大量に売れるものではないので進歩も遅い。
そんな機器たちと通信するプログラムをC#で書きたいときにハマるのがこれ。
.NETのJISコードには2種類ある。
- iso-2022-jp
- 半角カナなし。
- 有名なのはこれ。ほとんどのサイトで「JISコード」というとこれを紹介している。
- System.Text.Encoding.Convertで文字コードを変換する際に半角カナが含まれていると強制的に全角カナになる。
- csISO2022JP
- 半角カナあり。
これ!
System.Text.Encoding.GetEncoding("csISO2022JP");
これ!
System.Text.Encoding.GetEncoding("csISO2022JP");
これ!
System.Text.Encoding.GetEncoding("csISO2022JP");
大事なことなので三回言いました。