テキストファイルの操作(C)
もうすぐC言語を授業でやる。
ということで、まだ使ったことがなかった、テキストファイルに直接書いたりする方法を勉強するぞ
ファイルを開くときの形
ファイル型のポインタ変数 = fopen("テキストファイル名", "モード")
モード
ファイルを開いてどうするか。
- r:読み込み
- r+:読み書き
ファイルが存在しない場合、失敗する
- w:書き込み
- w+:読み書き
ファイルに上書きする。存在しない場合、新しいファイルを作る。
- a:追加書き込み
- a+:追加読み書き
ファイルに追記する。存在しない場合、新しいファイルを作る。
"+"は対のモードを追加して、読み書き両方を可能にする。
実際にファイルを開閉してみる
#include <stdio.h> int main(void){ FILE *hoge; //ファイル型のポインタ変数を定義 hoge = fopen("a.txt", "w"); //a.txtファイルをwモードで開く(存在する場合は上書きする) fclose(hoge); return 0; }
実行すると、
a.txtファイルが増えた!!
ファイルに書き込む
fprintf(ファイル型のポインタ変数, "文字列")を使う
#include <stdio.h> int main(void){ int num; num = 1; FILE *hoge; hoge = fopen("a.txt", "w"); fprintf(hoge, "Good morning, %d" ,num); fclose(hoge); return 0; }
>> Good morning, 1
このように、変数を表示させることも可能
ファイルから読み込む
Thank_you!
この、c.txtファイルの内容をコマンドラインに表示させる。
#include <stdio.h> int main(void){ char str[100]; FILE *hoge; hoge = fopen("c.txt", "r"); fscanf(hoge, "%s", str); fclose(hoge); printf("%s", str); return 0; }
>>Thank_you!