函數名: fread
功 能: 從一個流中讀數據
用 法: int fread(void*ptr, int size, int nitems, FILE *stream);
程序例:
#include <string.h>
#include <stdio.h>
int main(void)
{
FILE *stream;
char msg[] ="this is a test";
char buf[20];
if ((stream = fopen("DUMMY.FIL", "w+"))
== NULL)
{
fprintf(stderr,
"Cannot open output file.\n");
return1;
}
/* write some data to the file */
fwrite(msg, strlen(msg)+1, 1, stream);
/* seek to the beginning of the file */
fseek(stream, SEEK_SET, 0);
/* read the data and display it */
fread(buf, strlen(msg)+1, 1, stream);
printf("%s\n", buf);
fclose(stream);
return0;
}
C/C++ code
功 能: 寫內容到流中
用 法: int fwrite(void*ptr, int size, int nitems, FILE *stream);
程序例:
#include <stdio.h>
struct mystruct
{
int i;
char ch;
};
int main(void)
{
FILE *stream;
struct mystruct s;
if ((stream = fopen("TEST.$$$", "wb")) == NULL) /* open file TEST.$$$ */
{
fprintf(stderr, "Cannot open output file.\n");
return1;
}
s.i =0;
s.ch ='A';
fwrite(&s, sizeof(s), 1, stream); /* write struct s to file */
fclose(stream); /* close file */
return0;
}
功 能: 從一個流中執行格式化輸入
用 法: int fscanf(FILE *stream, char*format[,argument...]);
程序例:
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
int i;
printf("Input an integer: ");
/* read an integer from the
standard input stream */
if (fscanf(stdin, "%d", &i))
printf("The integer read was: %i\n",
i);
else
{
fprintf(stderr, "Error reading an \
integer from stdin.\n");
exit(1);
}
return0;
}
- C/C++ code
-
函數名: fprintf
功 能: 傳送格式化輸出到一個流中
用 法: int fprintf(FILE *stream, char*format[, argument,...]);
程序例:
/* Program to create backup of the
AUTOEXEC.BAT file */
#include <stdio.h>
int main(void)
{
FILE *in, *out;
if ((in= fopen("\\AUTOEXEC.BAT", "rt"))
== NULL)
{
fprintf(stderr, "Cannot open input \
file.\n");
return1;
}
if ((out= fopen("\\AUTOEXEC.BAK", "wt"))
== NULL)
{
fprintf(stderr, "Cannot open output \
file.\n");
return1;
}
while (!feof(in))
fputc(fgetc(in), out);
fclose(in);
fclose(out);
return0;
}
From:http://www.cnblogs.com/chenleiustc/archive/2009/10/10/1580569.html
留言列表