構造体の配列に読み込んだcsvファイルを格納し、編集したい
何行あるか分からないファイルを一行ずつ読込んで、構造体の配列に入れたいと思っています。
OpenFileDialogでファイル名の取得は行っていますが、肝心の読み込みが出来ていません。
「VB.NET CSV 読み込み」などで検索したのですが、サンプルを見てもあまり理解できなかったので、質問させていただきます。
読み込むcsvファイルはX座標の値,Y座標の値,Z座標の値が入っています。
この値をそれぞれ配列で宣言し、各値のデータの処理を行いたいと考えています。
csvファイルのX座標とXpointを結びつけて、その平均をとる計算や
構造体で1つのグループとしてまとめて、指定した範囲に入る値の抽出などを行いたいです。
計算式等は頭の中でもう出来ていて、読み込みが出来ないので困っています。
配列を使えばcsvファイルの値とXpointなどを結び付けられるのでしょうか?
Importa system.ioやshift-jis等も調べたのですがあまり理解できていないです。
お願いばかりで申し訳ありませんが教えていただきたいと思います。
よろしくお願いします。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
VB.net
1Public Class Form1 2 3 'アプリケーションの終了 4 Private Sub ExitButton_Click(sender As Object, e As EventArgs) Handles ExitButton.Click 5 Application.Exit() 6 End Sub 7 8 '構造体の定義 9 Public Structure PointData 10 Dim Xpoint As Double 'X座標 11 Dim Ypoint As Double 'Y座標 12 Dim Zpoint As Double 'Z座標 13 End Structure 14 15 'メンバ変数 16 Dim PD() As PointData 17 18 'ファイルの読み込み 19 Private Sub OpenButton_Click(sender As Object, e As EventArgs) Handles OpenButton.Click 20 Try 21 With OpenFileDialog1 22 '選択ダイアログを開く。 23 .Title = "点群ファイルの読み込み" 24 .FileName = "" 25 .Filter = "点群ファイル(*.csv)|*.csv|すべてのファイル(*.*)|*.*" 26 .DefaultExt = ".csv" 27 28 If .ShowDialog() = Windows.Forms.DialogResult.OK Then 29 30 '選択したファイル名を表示する。 31 OpenFileText.Text = IO.Path.GetFileName(.FileName) 32 33 'ファイルを読み込む。 34 MessageBox.Show(.FileName & "を読み込みました。", 35 My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Warning) 36 37 Else 38 MessageBox.Show(.FileName & "の読み込みに失敗しました。", 39 My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Warning) 40 End If 41 End With 42 Catch ex As Exception 43 End Try 44 End Sub 45 46End Class 47
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/09 15:43