VB.NET 【応用編】
目次
関数
2つ引数を乗算する関数を呼び出す処理について解説します。
プログラムソース
Module Module1 Sub Main() Dim X, Y, Z As Integer X = 2 Y = 3 Z = MyFunc(X,Y) Console.WriteLine(Z) Console.ReadKey() End Sub Function MyFunc(ByVal A As Integer, ByVal B As Integer) Return A * B End Function End Module
解説
変数 = 関数名(引数…)
関数を呼び出します。
Function 関数名(引数…)
関数名 = 戻り値
End Function
関数名 = 戻り値
End Function
関数を定義します。
ファイル操作
ファイルの存在有無による処理分岐について解説します。
プログラムソース
Module Module1
Sub Main()
Dim Cd As String
Cd = System.IO.Directory.GetCurrentDirectory()
If System.IO.File.Exists(Cd & "\テキスト.txt") Then
System.IO.File.Delete(Cd & "\テキスト.txt")
Else
Console.WriteLine("ファイルが存在しません。")
End If
Console.ReadKey()
End Sub
End Module
解説
Directory.GetCurrentDirectory
現在の作業ディレクトリを取得します。
File.Exists(ファイル名)
ファイルが存在するか調べます。
File.Delete(ファイル名)
ファイルを削除します。
ファイル入出力
テキストファイルを読み込み、その内容をテキストファイルに出力する処理について解説します。
プログラムソース
Imports System.IO
Imports System.Text
Module Module1
Sub Main()
Dim Cd = Directory.GetCurrentDirectory()
Dim Rf = New StreamReader(Cd & "\入力.txt", _
Encoding.Default)
Dim Wf = New StreamWriter(Cd & "\出力.txt", _
False, _
Encoding.Default)
Do Until Rf.EndOfStream
Wf.WriteLine(Rf.ReadLine())
Loop
Console.ReadKey()
Wf.Close()
Rf.Close()
End Sub
End Module
解説
Imports クラス名
クラス名の記述を省略します。
StreamReader(ファイル名,文字コード)
読み込みファイルを開きます。
StreamWriter (ファイル名,書込モード,文字コード)
書き込みモード
True :追記
False:上書き
True :追記
False:上書き
書き込みファイルを開きます。
StreamReader.EndOfStream
ファイルの末尾か確認します。
StreamReader.ReadLine
ファイルから1行を取得します。
StreamWriter.WriteLine(文字列)
指定した文字列を書き込みます。
StreamReader.Close
StreamWriter.Close
ファイルを閉じます。
外部プログラム実行
外部プログラムの実行処理について解説します。
プログラムソース
Imports System.Diagnostics
Module Module1
Sub Main()
Process.Start("notepad.exe")
Console.ReadKey()
End Sub
End Module
解説
Process.Start(実行ファイル)
プログラムを起動します。
コマンドライン引数
Exe起動時に引数を渡して実行する処理について解説します。
プログラムソース
メイン.exe
Imports System.IO Imports System.Diagnostics Module Module1 Sub Main() Dim Cd = Directory.GetCurrentDirectory() Process.Start(Cd & "\サブ.exe","aaa bbb") End Sub End Module
サブ.exe
Module Module1
Sub Main(ByVal Args() As String)
Console.WriteLine("引数1:" & Args(0))
Console.WriteLine("引数2:" & Args(1))
Console.ReadKey()
End Sub
End Module
解説
Process.Start(実行ファイル, 引数)
プログラムを起動します。
例外処理
例外処理について解説します。
プログラムソース
Module Module1
Sub Main()
Try
Dim X As Integer = 1
X = X / 0
Console.WriteLine("成功")
Catch ex As Exception
Console.WriteLine("失敗")
Finally
Console.ReadKey()
End Try
End Sub
End Module
解説
Try
例外が発生する可能性がある処理
Catch
例外発生時の処理
Finally
最後に必ず実行する処理
End Try
例外が発生する可能性がある処理
Catch
例外発生時の処理
Finally
最後に必ず実行する処理
End Try
例外処理を定義します。