字符串读写
/*
1.读字符串函数fgets
函数的功能是从指定的文件中读一个字符串到字符数组中,函数调用的形式为:fgets(字符数组名,n,文件指针);其中的n是一个正整数。表示从文件中读出的字符串不超过 n-1个字符。在读入的最后一个字符后加上串结束标志'\0'。
例如:fgets(str,n,fp) 函数的意义是从fp所指的文件中读出n-1个字符送入字符数组str中。
对fgets函数有两点说明:
a.在读出?n-1?个字符之前,如遇到了换行符或EOF,则读出结束。
b.fgets函数也有返回值,其返回值是字符数组的首地址。
2.写字符串函数 fputs
函数的功能是向指定的文件写入一个字符串,其调用形式为:fputs(字符串,文件指针) 其中字符串可以是字符串常量,也可以是字符数组名,或指针变量,
例如:fputs(“abcd“,fp) 意义是把字符串“abcd”写入fp所指的文件之中。
*/
例3:读入字符串
/*#include<stdio.h>
#include<stdlib.h>
void main()
{
FILE *fp;
char str[11];
if((fp=fopen("c:\\string.txt","rt"))==NULL)
{
printf("\nCannot open file strike any key exit!");
getchar();
exit(1);
}
fgets(str,11,fp);
printf("\n%s\n",str);
fclose(fp);
}*/
//例4字符串的写入
#include<stdio.h>
#include<stdlib.h>
void main()
{
FILE *fp;
char st[20],ch;
if((fp=fopen("c:\\string.txt","at+"))==NULL)
{
printf("\nCannot open file strike any key exit!");
getchar();
exit(1);
}
printf("\n原来文件的内容:\n");
while((ch=fgetc(fp))!=EOF)
{
putchar(ch);
}
printf("\n请输入追加的字符串:\n");
scanf("%s",st);
fputs(st,fp);
rewind(fp);
printf("\n追加文件的内容:\n");
while((ch=fgetc(fp))!=EOF)
{
putchar(ch);
}
printf("\n");
fclose(fp);
}