2011年3月31日木曜日

C#で全角⇔半角変換する方法

C#には全角⇔半角の変換を行うライブラリが用意されていません。
自作関数を作るかMicrosoft.VisualBasicにあるStrConvメソッドを使用します。
Strings.StrConv メソッド

StrConvメソッドを使用するには、事前準備としてVisual Studio上で
「Webサイト」→「参照の追加」→「.NET」タブから「Microsoft.VisualBasic」を選んで追加します。
1つ目の引数が対象となる文字列
2つ目の引数が全角(VbStrConv.Wide)、半角(VbStrConv.Narrow)の指定
3つ目の引数がロケール(日本語のロケールIDは0x0411)です。(省略可)

using Microsoft.VisualBasic;

string source = "アイウエオABCDE012345@#あいうえお";

//半角→全角
Console.WriteLine(Strings.StrConv(source, VbStrConv.Wide, 0x0411));
//結果 アイウエオABCDE012345@#あいうえお

//全角→半角
Console.WriteLine(Strings.StrConv(source, VbStrConv.Narrow, 0x0411));
//結果 アイウエオABCDE012345@#あいうえお

0 件のコメント:

コメントを投稿