第51章 低水準ファイル入出力 その2


今回は、前章で作ったファイルを読み出すプログラムを作ります。 ファイルをオープンして、read関数で読み出すだけです。 たいして難しくはありません。さっそくプログラムを 見てみましょう。openとかread関数にアンダースコアは 付けませんでした。

#include <stdio.h> #include <process.h> #include <io.h> #include <fcntl.h> #include <sys\types.h> #include <sys\stat.h> int main(void) { int f_hdl; char f_name[16]; char name[32], point[6]; printf("ファイル名="); gets(f_name); f_hdl = open(f_name, O_RDONLY); if(f_hdl == -1) { printf("エラーです\n"); exit(-1); } while(1) { if (read(f_hdl, name, 31) == 0) break; printf("%s ----", name); read(f_hdl, point, 5); printf("%s\n", point); } close(f_hdl); return 0; }


ファイルのオープンに失敗したときは、open関数は−1 を返すのでこれをチェックしておいて下さい。 また、read関数は、ファイルの最後まで来たら0を 返すのでこれをチェックして、ファイルの最後まで 来たら、無限ループを脱出しましょう。

実行結果は左の通りです。


[Index][総合Index] [Previous Chapter] [Next Chapter]

Update Feb/17/1997 By Y.Kumei
当ホーム・ページの一部または全部を無断で複写、複製、 転載あるいはコンピュータ等のファイルに保存することを禁じます。