読者です 読者をやめる 読者になる 読者になる

六帖のかたすみ

DVを受けていた男性。家を脱出して二周目の人生を生きています。自閉症スペクトラム(受動型)です。http://rokujo.org/ に引っ越しました。

C#で半角カナを全角カナに変換

プログラミング

半角カナはダサいので全角カナにしましょう。という依頼を受けました。.NETでそんなメソッドあるんかいな。

 

調べたらありました。

ひらがなとカタカナ、全角と半角の変換を行う: .NET Tips: C#, VB.NET

C#からならVBで使えるレガシーメソッドを使えるようにすればオッケーです。まず

Microsovt.VisualBasic.Dll

を参照設定しましょう。昔のVBメソッドを眠りから解き放つのですね。

string hankaku = "ハンカクモジャー";
string
zenkaku = Microsoft.VisualBasic.Strings.StrConv( s, Microsoft.VisualBasic.VbStrConv.Wide, 0x411); //ハンカクモジャー

ちゃんと半角の濁点も変換してくれてうれしい。しかし.NET独自の全角半角変換はないんですねぇ。半角カナはローカルすぎるので全世界的な.NETには搭載されてないっぽいです。

ただこれ欠点があって、半角カナだけではなく半角英数字も全角にしちゃうんですよね。それが嫌なら外部DLLを使いましょう。配布するDLLが増えるのが欠点ですがコードは一気に楽になります。

Microsoft Visual Studio International Pack 1.0 SR1

https://www.microsoft.com/ja-jp/download/details.aspx?id=15251