Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

Cでのfseek()とrewind()


fseek()

C言語のfseek()は、ファイルポインタを特定の位置に移動するために使用されます。オフセットとストリームは、関数パラメーターで指定されたポインターの宛先です。成功した場合はゼロを返し、そうでない場合はゼロ以外の値を返します。

これがC言語でのfseek()の構文です

int fseek(FILE *stream, long int offset, int whence)

fseek()で使用されるパラメータは次のとおりです

  • ストリーム −これはストリームを識別するためのポインタです。

  • オフセット −これはその位置からのバイト数です。

  • いつ −これはオフセットが追加される位置です。

whenceは、次の定数のいずれかで指定されます。

  • SEEK_END −ファイルの終わり。

  • SEEK_SET −ファイルの開始。

  • SEEK_CUR −ファイルポインタの現在の位置。

これはC言語でのfseek()の例です-

次の内容の「demo.txt」ファイルがあるとします-

This is demo text!
This is demo text!
This is demo text!
This is demo text!

コードを見てみましょう。

#include<stdio.h>
void main() {
   FILE *f;
   f = fopen("demo.txt", "r");
   if(f == NULL) {
      printf("\n Can't open file or file doesn't exist.");
      exit(0);
   }
   fseek(f, 0, SEEK_END);
   printf("The size of file : %ld bytes", ftell(f));
   getch();
}

出力

The size of file : 78 bytes

上記のプログラムでは、ファイル「demo.txt」はfopen()を使用して開かれ、fseek()関数を使用してポインターをファイルの末尾に移動します。

f = fopen("demo.txt", "r");
if(f == NULL) {
   printf("\n Can't open file or file doesn't exist.");
   exit(0);
}
fseek(f, 0, SEEK_END);

rewind()

関数rewind()は、ファイルの位置を指定されたストリームの先頭に設定するために使用されます。値を返しません。

C言語でのrewind()の構文は次のとおりです。

void rewind(FILE *stream);

これがC言語でのrewind()の例です

次の内容の「new.txt」ファイルがあるとします-

This is demo!
This is demo!

では、例を見てみましょう。

#include<stdio.h>
void main() {
   FILE *f;
   f = fopen("new.txt", "r");
   if(f == NULL) {
      printf("\n Can't open file or file doesn't exist.");
      exit(0);
   }
   rewind(f);
   fseek(f, 0, SEEK_END);
   printf("The size of file : %ld bytes", ftell(f));
   getch();
}

出力

The size of file : 28 bytes

上記のプログラムでは、ファイルはfopen()を使用して開かれ、ポインタ変数がnullの場合、ファイルを開くことができないか、ファイルが存在しないと表示されます。関数rewind()は、ポインタをファイルの先頭に移動しています。

f = fopen("new.txt", "r");
if(f == NULL) {
   printf("\n Can't open file or file doesn't exist.");
   exit(0);
}
rewind(f);

  1. 7Zファイルとは何ですか?

    ファイル拡張子が7Zのファイルは、7-Zip圧縮ファイルです。実際にはファイルのように機能することを除けば、コンピュータ上のフォルダに少し似ています。 フォルダと7Zファイルの両方に、1つ以上のファイル、さらには他のフォルダを保存できます。ただし、フォルダとは異なり、これはデータの圧縮アーカイブとして機能する.7Z拡張子の付いた単一のファイルです。 コンピュータソフトウェアプログラム、画像アルバム、ドキュメントのコレクションなど、一緒にバンドルされているファイルをインターネットからダウンロードすると、ほとんどの場合1つしか表示されません。基本的に、より小さく圧縮された形式でダウンロードす

  2. AIファイルとは何ですか?

    知っておくべきこと AIファイルはAdobeIllustratorArtworkファイルです。 Illustratorで開くかInkscapeで無料で開きます。 Zamzarまたはそれらと同じプログラムを使用して、PNG、JPG、SVGなどに変換します。 この記事では、AIファイルとは何か、ファイルを開く方法、および他のソフトウェアと互換性を持たせるためにSVG、JPG、PDF、PNGなどの別の形式に変換する方法について説明します。 AIファイルとは何ですか? 拡張子が.AIのファイルは、AdobeのベクターグラフィックプログラムであるIllustratorによって作成されたAd