こんにちは。とむじぃです。
今回はVisualBasicでの簡易的なcsvファイル読取プログラムを紹介します!
はじめに
開発環境
・Visual Studio 2017
OS
・Windows 10
スポンサーリンク
csvファイルの作成
今回の場合はCドライブのsampleというフォルダのtestdata.csvというファイルを読み込みます。
まずはCドライブにsampleというフォルダを作って下さい。
Excelからファイルの種類をCSV(カンマ区切り)にして保存し、testdata.csvというファイルを作ります。csvファイルへのパスは”C:\sample\testdata.csv”になっていますか?
VB.net
VB.netでForm1にButtonとDataGridViewを配置します。
以下のコードをForm1に書き込みます。
コードの入力
Imports System.IO Public Class Form1 Private Sub Button1_Click_1(sender As Object, e As EventArgs) Handles Button1.Click CsvReader() End Sub Sub CsvReader() Dim file As String = "C:\sample\testdata.csv" 'csvファイルのパスを指定 Dim SR As New StreamReader(file, System.Text.Encoding.GetEncoding("shift_jis")) 'StreamReader文字化け防止 Dim con_str As String 'データ保持用 'DataGridViewの初期化 DataGridView1.Columns.Clear() 'csvファイルの1行目を読み込む con_str = SR.ReadLine() 'データが無ければ終了 If con_str = Nothing Then Exit Sub '列の生成 Dim ColPlus() As String = con_str.Split(",") For Each da In ColPlus DataGridView1.Columns.Add(da, da) Next Do con_str = SR.ReadLine() 'csvファイルの2行目以降を読み込む If con_str = Nothing Then Exit Do 'データが無ければループ終了 Dim RowPlus() As String = con_str.Split(",") DataGridView1.Rows.Add(RowPlus) 'DataGrid行を追加 Loop SR.Close() 'ヘッダーと全てのセルの内容に合わせて、列の幅を自動調整する DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells 'ヘッダーと全てのセルの内容に合わせて、行の高さを自動調整する 'DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells End Sub End Class
DataGridViewに表示
デバッグしてButton1をクリックしてみて下さい。testdata.csvの内容がDataGridViewに表示されたでしょうか?
以上、VBでcsvファイルを読み取りDataGridViewに表示する方法でした!
スポンサーリンク
コメント