« 小中学校の理科補助教員になりました | メイン | au携帯からGmail »

検索班のCSVで思ったこと [ ソフト技術, 研究 ]

「それでいいよ」って言ったような気がするけど,
今さらながらに気になって気になって寝れないから,書く.

CSVで出力する際に,
出力したい情報に続けて,カンマを出力する.
例えば,

fprintf(fout,"%lf,",a[i][j]);

のような感じ.
必要に応じて,適宜改行コードを出力する.

出てくるCSVは以下のようなイメージ.


1,
2,3,
4,5,6,
7,8,9,10,

ここで注意すべきは,行末に","が余計に付与されていること.

CSVから入力する際は,ちょっとした工夫を施すことで,
これを問題ないものにすることができる.

まずは,fgetsで行単位で取得する.
取得したデータをsscanfで変数に格納する.
行単位で扱うので,行末の","を無視して扱えばいい.

このようにプロトコルを定めることで,
入力・出力インタフェイスの作成にかかる労力を減らせる.
というか,よくわからん文字列処理系関数が必要なくなる.
個人的に文字列処理は使いたくないし,
元々は数値情報なんだから,文字情報にしたくない.


関連情報:
scanf,fscanfは使わず fgets,sscanfのペアを使う
C言語プログラミングの基礎訓練
Programming Language I
というか.
fgets sscanf - Google 検索