VB.NET ファイルオープンダイアログを表示してファイルを読み込む
VB.NET
でファイルオープンダイアログ(ファイルを開く)を表示して、選択したファイルを読み込みます。
ファイルを保存するダイアログを表示する方法はVB.NET ファイル保存ダイアログを表示してファイルを書き込むで紹介しています。
Using ofd As OpenFileDialog = New OpenFileDialog
'デフォルトのファイル名を指定します
ofd.FileName = "output.csv"
'選択できるファイルの種類(拡張子)を限定します
ofd.Filter = "CSV Files |*.csv"
If ofd.ShowDialog() = DialogResult.OK Then
Using sr As New StreamReader(ofd.FileName, Encoding.UTF8)
Dim line As String
Do
'1行ずつファイルを読み込み
line = sr.ReadLine()
Console.WriteLine(line)
Loop Until line Is Nothing
End Using
End If
End Using
OpenFileDialog
OpenFileDialog
でファイルのオープンダイアログを表示します。
FileName
プロパティでデフォルトのファイル名を指定できます。ダイアログでファイルを選択したあとは、選択したファイルの絶対パスがセットされます。
ShowDialog()
でダイアログの結果(開くボタンが押されたのか、キャンセルされたのか)を取得できます。
開くボタンを押した場合のみファイルの読み込みを行うようにしています。
StreamReader
StreamReader
でファイルの読み込みを行います。
名前空間はSystem.IO
なので、コンパイルエラーになってしまう場合はvb
ファイルの先頭にImports System.IO
を追加するか、StreamReader
の代わりにSystem.IO.StreamReader
としてください。
StreamReader(ファイルパス, 文字エンコーディング)
の形式で指定します。
第1引数には先ほどオープンダイアログで指定したファイルパス(ofd.FileName
)を指定します。
第2引数は文字エンコーディングを指定します。Shift_JIS
やutf-8
など、仕様に従って指定します。
sr.ReadLine
でファイルの内容を1行読み込みます。
ファイルを最後まで読み込むには、sr.ReadLine
の結果がNothing
になるまでループして読み込みます。