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 UsingOpenFileDialog
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になるまでループして読み込みます。