こんにちは。とむじぃです。
今回は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に表示する方法でした!
スポンサーリンク



コメント