このようなことから,ファイル処理--ここではハードディスクへのデータの入出力--は, コンピューターを上手に使う必須のテクニックである.ファイル処理の技術を習得し,コ ンピューターを自在に活用して欲しい.これができるようになると,コンピューターの応 用がかなり拡がる.卒研などで,大変重宝するだろう.
1 #include <stdio.h> 2 3 int main(void){ 4 FILE *hoge; 5 6 hoge=fopen("hello.txt","w"); 7 8 fprintf(hoge,"Hello World !!\n"); 9 10 fclose(hoge); 11 12 return 0; 13 }
リスト1を実行すると,hello.txtというファイルができあがる.そ のファイルの中には,以下のような文字が書かれている.
Hello World !!
このプログラムの各行の内容は,次の通りである.文法の詳細については,後で説明する. ここでは,fprintf()でファイルに文字を書くことができることを理解せねばならない.
ファイルを識別するためのデータを入れる変数を準備する.
hello.txtというファイルを書き込み(write)モードで開いている.そして, ファイルの情報-- 正確には情報が書かれたアドレス--をポインターhoge に代入する.
ファイルにHello World !!と書く.書き込むべきファイルをhogeで示している.
使い終わったファイルを閉じる.
1 #include <stdio.h> 2 3 int main(void){ 4 FILE *fuga; 5 char a[32], b[32], c[32]; 6 7 fuga = fopen("hello.txt", "r"); 8 9 fscanf(fuga, "%s%s%s", a, b, c); 10 11 fclose(fuga); 12 13 printf("%s %s %s\n", a, b, c); 14 15 return 0; 16 }
このプログラムを実行すると,hello.txtというファイルから文字を読み込み,ディ スプレイに,以下のように表示される.
Hello World !!
このプログラムの各行の内容は,次の通りである.ここでの文法の詳細についても後で説明する. ただ,fscanf()でファイルから文字を読み取ることができることを理解せねばならない.
先ほど同様,ファイルを識別するためのデータを入れる変数である.
hello.txtというファイルを読み込み(read)モード開いている.戻り値であ るファイルの情報は,ポインターhogeに代入している.
ファイルからデータ--文字列--を読み込んでいる.空白は文字列の区切りを表 すので,文字列を入れる3つの配列を用意している.配列aに"Hello",配列 bに"World",配列cに"!!"が格納される.
使い終わったファイルを閉じている.