はじめに
前回は、データをグラフに表示する方法について説明しました。今回は、CSVファイルを読み込み、CSVファイルの内容をグラフに表示するアプリケーションを作成する方法を説明します。
これまでの記事
1.CSVファイルの読み込み
次のように、名前、身長、体重というカラムがあるCSVファイルがあったとします。
Allen,200,80 Smith,170,100 Scott,165,60 James,175,60
このCSVファイルをCurlで読み込むには、以下のようなコードを記述します。
{let records:CsvRecordSet =
{CsvRecordSet
{url "data.csv"}
, fields =
{RecordFields
{RecordField "name", caption = "Name", domain = String}
, {RecordField "height", caption = "height", domain = int}
, {RecordField "weight", caption = "weight", domain = int}
}
}
}
Curlの場合、このようにファイルのURLを指定するだけで、CSVファイルの読み込みとCsvRecordSetのインスタンス作成が可能です。
また、「{url "http://localhost:8080/sample/csvDownload.do"}」のように、httpのURLを指定するだけでネットワーク上のCSVファイルを読み込むこともできます。
次のファイルのようにヘッダ行を持ったCSVファイルの読み込みも可能です。ヘッダ行のあるファイルを読み込む場合は、header-line-countでヘッダの行数を指定するだけで対応できます。
name,height,weight Allen,200,80 Smith,170,100 Scott,165,60 James,175,60
{let records:CsvRecordSet =
{CsvRecordSet
{url "data.csv"}
|| ヘッダが存在する場合は、ヘッダの行数を指定する
, header-line-count = 1
, fields =
{RecordFields
{RecordField "name", caption = "Name", domain = String}
, {RecordField "height", caption = "height", domain = int}
, {RecordField "weight", caption = "weight", domain = int}
}
}
}
CurlではこのようにCSVファイルを読み込む機能があらかじめAPIとして提供されているため、コーディングは非常に簡単です。

