整数キーボード入力 [VB]

入力データを整数に変換

キーボードから入力
文字列入力
整数入力
実数入力
入力エラー対応方法
数値変換 TryParse

キーボードから入力したデータは、すべて文字データとして取り込まれるので、プログラムの中で整数として使いたい時には、Integer.Parse 関数を使って、整数に変換する必要があります。

試しに、文字を混在したデータを入力したら、エラーになる簡単なサンプルプログラムを作成します。キーボードから、0~9の数字キーと、先頭に - (マイナス)を入力しないとエラーになります。

Module Module1

  Sub Main()
    ' 変数の宣言
    Dim inStr As String = ""
    Dim inNum As Integer = 0
    ' キーボードから入力
    inStr = Console.ReadLine()
    ' 文字列を整数に変換
    inNum = Integer.Parse(inStr)
  End Sub

End Module

数字以外の文字を入力すると、次のようなエラーメッセージが表示され、プログラムは実行を停止します。そのときは、[プログラムの終了]ボタンを押してください。

停止

このまま放置すると、次のダイアログボックスに変ります。[プログラムの終了]ボタンを押して、ダイアログボックスを閉じます。

終了

最後に、何かキーを押して、コンソール画面を閉じます。

例外

キーボードからは、数字以外の文字を何でも入力できるので、入力文字列に数字以外の文字があれば、このようなエラーダイアログが表示され、入力エラーになります。

このようなエラーダイアログがでないよう数値入力では、入力エラーの処理をプログラムに追加する必要があります。

整数変換 Integer.Parse を使ったサンプルプログラム

キーボードから入力した整数値を2倍して、その結果を表示するプログラムを作成します。

数字以外が入力されたら、エラーメッセージを表示して、プログラムを終了します。

入力エラーがあった時は、キーボードから再入力できるプログラムはこちらからどうぞ。

入力エラー時の再入力プログラム
Module Module1

  Sub Main()
      ' 変数の宣言
       Dim inStr As String = ""
       Dim inNum As Integer = 0
      ' キーボードから入力
      Console.WriteLine("整数を入力してください")
      inStr = Console.ReadLine()
      If IsNumeric(inStr) = True Then
          ' 文字列を整数に変換
          inNum = Integer.Parse(inStr)
          ' 入力値を2倍
          inNum = inNum * 2
          ' 結果を表示
          Console.WriteLine("計算結果:" & inNum)
      Else
          Console.WriteLine("数字以外の文字があります")
          Console.WriteLine()
      End If
  End Sub

End Module