文件的读取操作:
void GetString(char *str)
{
char *fileName = "D://filein.txt";
FILE *fp;
fp = fopen(fileName,"r");
if(fp == NULL)
{
printf("FAIL!\n");
return;
}
char ch;
int count = 0;
while(!feof(fp))
{
ch = getc(fp);
str[count++] = ch;
}
str[count] = '\0';
}
fopen()函数里面的几个常用参数:"r"表示只读,"w"表示写,但是注意这个写是会覆盖文件之前的内容的,"a+"这个才是在原来文件的基础上进行追加写入。该函数是返回文件的一个指针。!feof()是判断文件是否读取到了文件尾部。
这种方法适合需要在对其中的字符进行相应的操作的情况。如果是只需要字符串的情况下可以采用scanf(),该函数有三个参数,其中第一个参数是文件的指针,第二个参数读取的格式,这个同scanf(),常见的有"%d","%f","%s"之类的,最后一个是读取到的变量。
注意getc()是不会读取回车的,所以若果你不加特殊的判断回车字符是不会进入字符串的。
文件写入:
void Write(char *str)
{
char *fileName = "D://fileout.txt";;
FILE *fp;
fp = fopen(fileName,"a+");
if(fp == NULL)
{
printf("FAIL!\n");
return;
}
fprintf(fp,"%s",str);
}
当然这个也有putc()之类的函数,在文件操作中,读取的函数一般都是有对应的。