fprintf()函数用于将一组字符写入文件。它将格式化的输出发送到流。
fprintf()函数的语法如下:
int fprintf(FILE
*stream, const char *format [, argument, ...])
|
示例:
创建一个源文件:fprintf-write-file.c,其代码如下
-
#include
<stdio.h>
main() {
FILE *fp;
fp = fopen("file.txt", "w");//opening
file
fprintf(fp, "Hello file by fprintf...\n");//writing
data into file
fclose(fp);//closing file
printf("Write to file : file.txt finished.");
}
|
执行上面示例代码,得到以下结果 -
Write to
file : file.txt finished.
|
打开filehadling 目录下,应该会看到一个文件:file.txt 。
读取文件:fscanf()函数
fscanf()函数用于从文件中读取一组字符。它从文件读取一个单词,并在文件结尾返回EOF。
fscanf()函数的语法如下:
int fscanf(FILE
*stream, const char *format [, argument, ...]) |
示例:
创建一个源文件:fscanf-read-file.c,其代码如下
-
#include
<stdio.h>
main(){
FILE *fp;
char buff[255];//creating char array to store
data of file
fp = fopen("file.txt", "r");
while(fscanf(fp, "%s", buff)!=EOF){
printf("%s ", buff );
}
fclose(fp);
}
|
执行上面示例代码,得到以下结果 -
文件存取示例:存储员工信息
下面来看看一个文件处理示例来存储从控制台输入的员工信息。要存储雇员的信息有:身份ID,姓名和工资。
示例:
创建一个源文件:storing-employee.c,其代码如下
-
#include
<stdio.h>
void main()
{
FILE *fptr;
int id;
char name[30];
float salary;
fptr = fopen("emp.txt", "w+");/*
open for writing */
if (fptr == NULL)
{
printf("File does not exists \n");
return;
}
printf("Enter the Emp ID:");
scanf("%d", &id);
fprintf(fptr, "Id= %d\n", id);
printf("Enter the name: ");
scanf("%s", name);
fprintf(fptr, "Name= %s\n", name);
printf("Enter the salary: ");
scanf("%f", &salary);
fprintf(fptr, "Salary= %.2f\n",
salary);
fclose(fptr);
} |
执行上面示例代码,得到以下结果 -
Enter the Emp
ID:10010
Enter the name: Maxsu
Enter the salary: 15000
|
现在从当前目录打开文件。将看到有一个emp.txt文件,其内容如下
-
emp.txt
Id= 10010
Name= Maxsu
Salary= 15000.00
|
|
978 次浏览 |
9次 |
|
捐助 |
|
|
|
|
|