C++BuilderでTJvCsvDataSetを使ってみました。
TJvCsvDataSetを使うと、CSVファイルをテーブルのように扱うことができます。
VCLのデータベースコンポーネントを使用してCSVファイルの表示や編集が簡単にできました。
※TJvCsvDataSetはJVCLのコンポーネントです。JVCLをインストールすると使用できるようになります。
■CSVファイルの先頭行が列名の時
- TJvCsvDataSetコンポーネントをフォームに配置します。
-
TJvCsvDataSetコンポーネントのFileNameプロパティでCSVファイルのファイル名を設定します。
-
TDataSourceコンポーネントとDBGridコンポーネントを配置します。
-
TDataSourceコンポーネントのTDataSetプロパティを設定します。
-
TDBGridコンポーネントのDataSourceプロパティを設定します。
-
TJvCsvDataSetコンポーネントのActiveプロパティをTrueに設定します。
TDBGridコンポーネントにCSVファイルのデータが表示されます。
■CSVファイルの先頭行が列名ではない時
- TJvCsvDataSetコンポーネントをフォームに配置します。
-
TJvCsvDataSetコンポーネントのFileNameプロパティでCSVファイルのファイル名を設定します。
-
TJvCsvDataSetコンポーネントのHasHeaderRowプロパティをFalseに設定します。
-
CscFieldDefプロパティの[…]ボタンを押して、CSVファイルの列の型を設定します。
- Field Name欄に列名を入力します。頭文字は英字、それ以降は英数字を使用できます。
- Field Type欄からデータ型を選択します。
- Length欄に列長を入力します。
- Modifyボタンを押して列を追加します。
- 修正する時はFields欄から列を選択し、入力が終わったらModifyボタンを押して変更を反映します。
- すべての列の設定が終わったら、OKボタンを押します。
-
TDataSourceコンポーネントとDBGridコンポーネントを配置します。
-
TDataSourceコンポーネントのTDataSetプロパティを設定します。
-
TDBGridコンポーネントのDataSourceプロパティを設定します。
-
TJvCsvDataSetコンポーネントのActiveプロパティをTrueに設定します。
TDBGridコンポーネントにCSVファイルのデータが表示されます。
■データコントロールで編集する
- TDBEditコンポーネントを配置します。
-
DataSourceプロパティとDataFieldプロパティを設定します。
TDBEditコンポーネントに値を入力すると、即座にCSVファイルに反映されます。
■参考