このようなことから,ファイル処理--ここではハードディスクへのデータの入出力--は, コンピューターを上手に使う必須のテクニックである.ファイル処理の技術を習得し,コ ンピューターを自在に活用して欲しい.これができるようになると,コンピューターの応 用がかなり拡がる.卒研などで,大変重宝するだろう.
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で示している.
使い終わったファイルを閉じる.
===============================================
Akita National College of Technology
Dept. of Electrical and Computer Engineering
Yamamoto Masashi
TEL/FAX 018-847-6044
e-mail yamamoto@akita-nct.jp
===============================================
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に"!!"が格納される.
使い終わったファイルを閉じている.