c 如何将数据写入文件

2025-10-12 10:21:04

1、C语言程序的建立和编译这里不再赘述。打开控制台输入g++ -v即可查看版本。我这里用到的gcc版本是mingw的4.9版本。

将数据写入文件大体分为三个步骤:一、打开文件;二、向文件输出内容;三、关闭文件。

c 如何将数据写入文件

2、一、打开文件

C语言操作文件基于FILE指针,定义在头文件stdio.h中。在打开文件之前需要新建一个FILE指针。打开文件使用freopen(const char *filename, const char *mode)函数。filename是文件的绝对路径或相对路径。mode是使用文件方式,写入文件的文件使用方式选择带有'w'的,如果是二进制文件,则再加上'b'。使用文件方式见表:

c 如何将数据写入文件

3、二、向文件输出内容

对文本文件的输出函数有字符输出函数fputc()、字符串输出函数fputs()和格式化输出函数fprintf()。根据需要灵活运用。对于二进制的数据块则使用fwrite()函数。

三、关闭文件

在使用完一个文件后应该关闭它,以防止它再被误用。使用fclose(FILE* fp)函数关闭文件。

c 如何将数据写入文件

4、接下来看一个例子来温习上面的三个步骤。这个例子的功能是实现文件的复制。

代码:/* learn_write.cc */

#include <stdio.h>

#include <stdlib.h>

int main(int argc,char *argv[])

{

  FILE *in, *out;

  char ch, infile[20], outfile[20];

  printf("Enter the input file name:");

  scanf("%s", infile);

  in = fopen(infile, "r");

  if (in == NULL)

  {

printf("ERROR: Cannot open %s\n", infile);

exit(1);

  }

  

  printf("Enter the output file name:");

  scanf("%s", outfile);

  out = fopen(outfile, "w");

  if (out == NULL)

  {

printf("ERROR: Cannot open output file\n");

exit(1);

  }

  

  while (!feof(in)) {fputc(fgetc(in), out);}

  

  fclose(in);

  fclose(out);

  return 0;

}

为了测试程序运行结果,将文件编译为clone.exe文件。再程序所在目录下新建一个input.txt文本文件,然后运行程序clone,执行复制到output.txt文件。结果如图,type命令用来再DOS中输出文本文件内容。

c 如何将数据写入文件

5、另外,输出数据到文件还有一种方法,就是利用标准输出+文件重定向。

正常情况下如果使用print函数,将在控制台中输出结果。在输出之前加上文件重定向freopen函数,就把控制台中输出的内容全部写入文件中去了。下面是一个例子。

代码:/* reopen.cc */

#include <stdio.h>

#include <stdlib.h>

int main(int argc,char *argv[])

{

  char filename[40] = "output.txt";

  freopen(filename, "w", stdout);

  printf("Write something into %s", filename);

  return 0;

}

c 如何将数据写入文件

6、篇幅所限,不再举更复杂的例子。C语言标准库还有其他读写函数和文件定位函数等,不一一说明了。最重要的是实践中掌握这些函数的用法。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:116
  • 阅读量:54
  • 阅读量:189
  • 阅读量:194
  • 阅读量:122
  • 猜你喜欢