C無料提供を開始しました。Cが、個人向けに無料提供を始めました。インタープリタの手軽さに加え、ゲームや3Dタートルグラフィックで楽しく勉強したりと、C言語の学習を強力にサポートします。Cに直接ロードし実行したりすることができます。C無料利用についての詳細は、このページを参照してください。Excelなど多くのプログラムではCSV形式(カンマ区切り形式)で内容を出力することができます。CSVで出力したファイルを自分で加工したりするようなケースは結構あるものです。今回はCSVファイルの読み込むだけのプログラムを作成します。Excelで1行目に1、2、3、2行目に11、12、13、3行目に21、22、23と入力してCSV形式でセーブしたのが下記のデータです。1,2,311,12,1321,22,23最初にCSVファイルからデータを読み込みます。読み込みにはfgets関数を使用します。読み込んだデータの最後の文字が改行文字('\n')かどうか調べ改行文字でない場合はエラーとします。一行が1024文字以上の場合は取り扱えないデータとしてエラーで処理中断します。ファイルの最後の行で改行がない場合はエラーとしないのでfeof関数を使用してファイルの終わりを検出しています。ファイル名はコマンドラインから取得します。ファイル名"の形式で実行すると指定したファイルの内容を表示します。次に読み込んだ文字列からCSVデータを取り出すGetCSVItem関数を作成します。この関数はデータを1個づつ取得し、取得後の次から評価すべき文字列のポインタを返します。想定されるアイテムの数だけGetCSVItem関数を並べ、返された値(ポインタ)を次に呼び出すGetCSVItem関数に渡していけば良いわけです(取得に失敗した場合はNULLを返します)。今回は1行に3個の項目が存在することを想定して作成しています。csvdata.csv」のように実行する必要があるので実行ボタンはありません上記のプログラムを実行するとCSVの内容を読み込みます。読み込んだ結果は単に表示しているだけです。CSV形式では"..."といった形式が含まれる場合があります。次回はこのような形式にも対応できるように改造します。�潟IーキッドC言語トップページにもどる。