CSVファイルからデータを読んで利用する方法

概要:CSVの列名にあわせた構造体をつくってDataTableとしてCSVをインポートして利用する(本記事ではUE4エディタでの読み込みのみ)

CSVの用意

CSVは1行目に列名を書いておく必要がある。
1列目の値は識別用につかわれるので連番など重複のない値にしておく。
日本語も可だがUTF-8で保存する。
f:id:hat0xAA:20190306115525j:plainf:id:hat0xAA:20190306115607j:plain

構造体の作成

構造体を作り、CSVの2列目以降の列名と同じ名前の変数を用意する。型は列の内容に合わせる。
変数の順番はCSVの列の順と違っていても列名で対応付けされるので問題ない。
f:id:hat0xAA:20190306115854j:plainf:id:hat0xAA:20190306115912j:plain

CSVのインポート

CSVファイルをUE4D&Dするとデータテーブルオプション窓が開くので作成した構造体名を選択するとデータテーブルとしてCSVデータがインポートされる。
f:id:hat0xAA:20190306120256j:plain
f:id:hat0xAA:20190306120431j:plain

BPでデータを利用

DataTableを利用し、「データテーブル行を取得」ノードで1列目の識別文字列をつかって特定の行データを取得できる。(「以降の列」出力ピン)
構造体の分解ノードで各列の値を参照できる。
f:id:hat0xAA:20190306121004j:plain


「データテーブル行を取得」ノードはDataTableからの状況に合わせた表示で"GetD"で検索すると見つけやすい。「ユーティリティ」にある。GetDataTableRowNamesとの間違いに注意。英語名:GetDataTableRow
f:id:hat0xAA:20190306123601j:plain


構造体の分解ノードは、「以降の列」出力ピンからのノード検索で"br"で検索すると見つけやすい。英語名:Break ****(構造体名)
f:id:hat0xAA:20190306122030j:plain


GetDataTableRowNamesノードで1列目の識別文字のリストが取得できる。全行の処理や存在チェックなどに利用できる。