fprintf()函數(shù)用于將字符集寫(xiě)入文件。它將格式化的輸出發(fā)送到流。
語(yǔ)法:
int fprintf(FILE *stream, const char *format [, argument, ...])
#include <stdio.h>
void main(){
FILE *fp;
fp = fopen("file.txt", "w");//打開(kāi)文件
fprintf(fp, "我是被fprintf寫(xiě)入的數(shù)據(jù)...\n");//寫(xiě)入數(shù)據(jù)到文件
fclose(fp);//關(guān)閉文件
}fscanf()函數(shù)用于從文件讀取字符集。它從文件中讀取一個(gè)單詞,并在文件末尾返回EOF。
語(yǔ)法:
int fscanf(FILE *stream, const char *format [, argument, ...])
#include <stdio.h>
void main(){
FILE *fp;
char buff[255];//創(chuàng)建char數(shù)組以存儲(chǔ)文件數(shù)據(jù)
fp = fopen("file.txt", "r");
while(fscanf(fp, "%s", buff)!=EOF){
printf("%s ", buff );
}
fclose(fp);
}輸出:
我是被fprintf寫(xiě)入的數(shù)據(jù)...
讓我們看一個(gè)文件處理示例,該示例存儲(chǔ)用戶從指定臺(tái)輸入的員工信息。我們將存儲(chǔ)員工的ID,姓名和工資。
#include <stdio.h>
void main(){
FILE *fptr;
int id;
char name[30];
float salary;
fptr = fopen("emp.txt", "w+");/* 以寫(xiě)的方式打開(kāi)文件 */
if (fptr == NULL)
{
printf("文件不存在 \n");
return;
}
printf("輸入id\n");
scanf("%d", &id);
fprintf(fptr, "Id= %d\n", id);
printf("輸入姓名 \n");
scanf("%s", name);
fprintf(fptr, "Name= %s\n", name);
printf("輸入薪水\n");
scanf("%f", &salary);
fprintf(fptr, "Salary= %.2f\n", salary);
fclose(fptr);
}輸出:
輸入id 1 輸入姓名 sonoo 輸入薪水 120000
現(xiàn)在從當(dāng)前目錄打開(kāi)文件。對(duì)于Windows操作系統(tǒng),請(qǐng)轉(zhuǎn)到文件目錄下,您將看到emp.txt文件。它將具有以下信息。
emp.txt
Id= 1 Name= sonoo Salary= 120000