概要
以前、既存機能の復活するため、
ログファイルを見ましたが、何かおかしいだったので、
コードを確認しました。
そこで、fopenのmodeがおかしいでした。
なんやら、上書きしている感じだったので、
追記モードでファイル作成ができるようにしました。
今回で、fopenのモードを整理しようと思います。
fopenとは?
ファイル入出力関数で、
ファイル名(filename)で示されるファイルを、指定モード(mode)でオープンする。
ファイルが正しくオープンされると、ファイルポインタが返される。
エラーの時は NULLが返される。
FILE *fopen(const char *filename, const char *mode);
fopenのモード
- r :読み込みのみ
- r+ :読み込み/書き出し用
- w :書き出しのみ。もし、同じファイルが存在している場合、そのファイルの内容をすべて消した後、内容を追記。ファイルが存在していない場合、ファイルを作成します。
- w+ :読み込み/書き出し用。もし、同じファイルが存在している場合、そのファイルの内容をすべて消した後、内容を追記。ファイルが存在していない場合、ファイルを作成します。
- a :書き出し用のみ。もし、同じファイルが存在している場合、すべての書き込み操作は、ファイルの末尾で行う。ファイルが存在していなければ、空のファイルを新たに作成する。
- a+ :読み込み/書き出し用。もし、同じファイルが存在している場合、すべての書き込み操作は、ファイルの末尾で行う。ファイルが存在していなければ、空のファイルを新たに作成する。
- b :Binary Mode
- t :Text Mode