文件的简单读写

文件的读取操作:

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()之类的函数,在文件操作中,读取的函数一般都是有对应的。

猜你喜欢

转载自blog.csdn.net/c_living/article/details/79524060
今日推荐