【VB.NET】ひらがな→カタカナ・半角→全角 文字変換

VB.NET
この記事は約4分で読めます。

【VB.NET】いろいろな文字変換

  • ひらがな→カタカナ
  • カタカナ→ひらがな
  • 半角→全角
  • 全角→半角

などの変換の仕方を説明します。

やり方はStrConvメソッドを使用します。

やり方

StrConvメソッドは引数に変換する文字列と変換先を列挙型で指定します。

第三引数にはロケールID(LCID)を指定します。

日本のロケールIDは、10進数では「1041」です。また16進数で「&H411」です。

16進数の&Hは16進数を表します。

サンプルコード

Module Module1
    Sub Main()

        Dim str As String = "AAaaあぁアァアァババニュニュ"
        Dim LID As Integer = 1041 'ロケールID:日本

        Console.WriteLine("変換なし")
        Console.WriteLine(StrConv(str, VbStrConv.None, LID))

        Console.WriteLine(vbNewLine & "ひらがな→カタカナに変換する")
        Console.WriteLine(StrConv(str, VbStrConv.Katakana, LID))

        Console.WriteLine(vbNewLine & "カタカナ→ひらがなに変換する")
        Console.WriteLine(StrConv(str, VbStrConv.Hiragana, LID))

        Console.WriteLine(vbNewLine & "半角→全角に変換する")
        Console.WriteLine(StrConv(str, VbStrConv.Wide, LID))

        Console.WriteLine(vbNewLine & "全角→半角に変換する")
        Console.WriteLine(StrConv(str, VbStrConv.Narrow, LID))

        Console.WriteLine(vbNewLine & "合わせ技")
        Console.WriteLine(StrConv(str, VbStrConv.Hiragana Or VbStrConv.Wide, LID))

    End Sub

End Module
変換なし
AAaaあぁアァアァババニュニュ

ひらがな→カタカナに変換する
AAaaアァアァアァババニュニュ

カタカナ→ひらがなに変換する
AAaaあぁあぁアァばバにゅニュ

半角→全角に変換する
AAaaあぁアァアァババニュニュ

全角→半角に変換する
AAaaあぁアァアァババニュニュ

合わせ技
AAaaあぁあぁあぁばばにゅにゅ
続行するには何かキーを押してください . . .

ロケールIDが日本以外

ひらがなをカタカナに変換する際にロケールIDが日本以外だとエラーになります。

Module Module1
    Sub Main()
        Dim str As String = "AAaaあぁアァアァババニュニュ"

        Dim LID As Integer = 1033 'ロケールID:アメリカ

        Console.WriteLine("変換なし")
        Console.WriteLine(StrConv(str, VbStrConv.None, LID))

        Console.WriteLine(vbNewLine & "ひらがな→カタカナに変換する")
        Console.WriteLine(StrConv(str, VbStrConv.Katakana, LID))

    End Sub

End Module

コメント

タイトルとURLをコピーしました