[C言語] ファイルにデータ書き込み

2016年3月17日

C言語 テクノロジー プログラミング

C言語を使ってファイルに文字列を書き込むソースをメモしておきます。 全く現段階では、使い予定のないソースコードですが、プログラム勉強におけるデータ書き出し処理として、 参考程度にしてもらえるといいかと思います。

ソースコード

fileWrite.c

#include <stdio .h> #include <stdlib .h> #include <string .h> /** * ファイル書き込み * クエリ情報の書き込み(追記型) **/ void main (int argc,char *argv[]){ // ファイルポインタの宣言 FILE *file; // ファイルのオープン file = fopen("./data.txt", "a"); //チェック if(file == NULL){ printf("Not file open!"); exit(1); } char *str; int i; for(i=1; i<argc ; i++){ strcat(str, argv[i]); strcat(str, ","); } strcat(str, "\n"); // ファイルの書き込み fprintf(file, str); printf("%s", str); // ファイルクローズ fclose(file); }

解説

ファイルのデータ書き込みは、工程さえ押さえておけば非常に簡単に行なえます。 1. ファイルオープン 2. データ書き込み 3. ファイルクローズ この工程ですが、今回は排他処理は考慮していません。 今後必ず問題になると思いますが、その時に対応したいと思います。

コンパイル

$ gcc -o fileWrite fileWrite.c

実行

引数を「data.txt」ファイルに書き込む(追記)仕様です。 $ ./fileWrite aaa bbb ccc ddd 無事にdata.txtファイルに新しい行ができて文字列が追記されていれば成功です。 2バイト文字対応やら、文字エンコードやらも、排他処理と同じく今後に対応したいと思います。

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。