任务代码:

文件操作步骤:

#include <stdio.h>
#include <stdlib.h>
int main()
{FILE *fp;//文件指针int i, d;/*文件的打开*/fp=fopen("data.txt","w");//fopen打开文件,这个文件可以是当前不存在的。“w”以写入的形式打开,“r”以读的形式打开if(fp==NULL) //判断如果文件指针为空{printf("File cannot open! " );exit(0);//在以0的形式退出,必须在文件开头有#include <stdlib.h>,stdlib 头文件即standard library标准库头文件}//写入东西for(i=0; i<10; i++){scanf("%d", &d);//用户出入fprintf(fp,"%d\t", d);//写入指针fp,写入的东西就是刚才的用户输入的d,注意这里的fp和d没有引号}//关闭文件fclose(fp);return 0;
}

格式化输出:

#include <stdio.h>
#include <stdlib.h>
int main()
{FILE *fp;//文件指针int i, No;float salary;/*文件的打开*/fp=fopen("data.csv","w");//csv文件可以直接用excel打开if(fp==NULL) //判断如果文件指针为空{printf("File cannot open! " );exit(0); //在以0的形式退出,必须在文件开头有#include <stdlib.h>,stdlib 头文件即standard library标准库头文件}//写入东西for(i=0; i<5; i++){scanf("%d %f", &No,&salary);//用户出入fprintf(fp,"%d,%.2f\n", No,salary);//!!!!!尤其注意这里要用逗号隔开,因为excel表里面就默认识别逗号隔开的才能分类fprintf(文件指针,格式字符串,列表)} //关闭文件 fclose(fp); return 0;}

格式化输入:

#include <stdio.h>
#include <stdlib.h>
int main()
{FILE *fp;//文件指针int i, No;float salary;/*文件的打开*/fp=fopen("data.csv","r");//改用读取的形式"r"if(fp==NULL){printf("File cannot open! " );exit(0);}//从文件中读入5名员工的工号和工资,并显示for(i=0; i<5; i++){fscanf(fp,"%d,%f", &No,&salary);//格式化输入fscanf(文件指针,格式字符串,输入列表)printf("%d\t%.2f\n", No,salary);}//关闭文件fclose(fp);return 0;
}

格式化输出字符:

#include <stdio.h>
#include <stdlib.h>
int main()
{FILE *fp;char ch;//定义字符变量if ((fp=fopen( "data.dat" , "w" ))==NULL){printf("File cannot open!");exit(0);}while((ch=getchar())!=EOF )//用户输入字符,EOF为C语言定义的-1即失败fputc(ch,fp );//将无数的字符可以输入到文件中,使用ctrl+z结束输入//关闭文件fclose(fp);return 0;
}

格式化输入字符:

#include <stdio.h>
#include <stdlib.h>
int main()
{  FILE *fp;  char c;  if ((fp=fopen( "data.dat" , "r" ))==NULL)  {  printf("File cannot open!");  exit(0);  }  while((c=fgetc(fp))!=EOF)  putchar(c);  fclose(fp);  return 0;
}

执行情况:

文件操作步骤:

格式化输出;

格式化输入:


格式化输出字符:


格式化输入字符:


知识总结:

读取文件就是文件从磁盘传到内存,输出写出程序就是将文件从内存出处到磁盘保存

读写文件的步骤:

开头:
stdlib 头文件即standard library标准库头文件,常用的函数如malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等等。

文件指针:
在C语言中用一个指针变量指向一个文件,这个指针称为文件指针。通过文件指针就可对它所指的文件进行各种操作。
FILE *指针变量标识符;

打开文件:

函数原型:FILE * fopen(const char * path,const char * mode);
参数说明:

参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态。

mode有下列几种形态字符串:

r 以只读方式打开文件,该文件必须存在。

r+ 以可读写方式打开文件,该文件必须存在。

rb+ 读写打开一个二进制文件,允许读数据。

w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。

w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。

文件操作:

格式化输出数字:

fprintf(fp,"%d,%.2f\n", No,salary);//!!!!!尤其注意这里要用逗号隔开,因为excel表里面就默认识别逗号隔开的才能分类fprintf(文件指针,格式字符串,列表)

格式化输入数字:

fscanf(fp,"%d,%f", &No,&salary);//格式化输入fscanf(文件指针,格式字符串,输入列表)

格式化输出字符:

fputc(ch,fp );

格式化输入字符:

fgetc(fp)

关闭文件:

fclose(fp);

心得体会:

不要弄反了putchar()和fputc(),getchar()和fgetc();

C语言:将数据保存到文本文件相关推荐

  1. c语言:数据保存的方法实现简易贪吃蛇

    贪吃蛇作为我童年第一个接触的手机游戏,在学c语言的时候就一直在想什么时候可以自己实现.经过一年的学习也是终于写出来了,在这期间我看了很多其它博客上的文章,我也很感谢那些愿意把自己的知识在网上和大家分享 ...

  2. php字符串定义为arraylist,如何把arraylist集合中的字符串数据保存的文本文件中

    分析: (推荐教程:java课程) 通过题目的意思我们可以知道如下内容:ArrayList集合里存储的是字符串 遍历ArrayList集合,把数据获取 然后存储到文本文件中 文本文文件说明使用文本文件 ...

  3. 将图像的像素数据保存到文本文件

    主要的代码如下: void CICETIMDlg::OnBtnSavepixel() {  // TODO: Add your control notification handler code he ...

  4. Oracle大规模数据快速导出文本文件

    哈喽,前几久,和大家分享过如何把文本数据快速导入数据库(点击即可打开),今天再和大家分享一个小技能,将Oracle数据库中的数据按照指定分割符.指定字段导出至文本文件. 首先来张图,看看导出的数据是什 ...

  5. oracle怎么设置sql每隔一段时间执行一次_Oracle大规模数据快速导出文本文件

    哈喽,前几久,和大家分享过如何把文本数据快速导入数据库(点击即可打开),今天再和大家分享一个小技能,将Oracle数据库中的数据按照指定分割符.指定字段导出至文本文件. 首先来张图,看看导出的数据是什 ...

  6. R语言数据读取以及数据保存

    一.R语言读取文本文件: 1.文件目录操作: getwd() : 返回当前工作目录 setwd("d:/data")  更改工作目录 2.常用的读取指令read read.tabl ...

  7. R语言数据导出(数据保存、导出、持久化到本地指定目录文件)、使用foreign包的write.dta函数将dataframe导出为Stata格式dta文件

    R语言数据导出(数据保存.导出.持久化到本地指定目录文件).使用foreign包的write.dta函数将dataframe导出为Stata格式dta文件 目录

  8. R语言数据导出(数据保存、导出、持久化到本地指定目录文件)、保存为txt、csv、tsv、xls、xlsx、dta、sas、sps格式文件

    R语言数据导出(数据保存.导出.持久化到本地指定目录文件).保存为txt.csv.tsv.xls.xlsx.dta.sas.sps格式文件 目录

  9. C语言学生管理系统(将数据保存至TXT文档)附源码

    C语言学生管理系统(将数据保存至TXT文档) 在大一学习完C语言之后,回家遇到疫情,便有了用C语言写一个学生管理系统的想法,在家花费了一些时间,刚开始写了一点,后来可能是因为学艺不精就没写完,开学到现 ...

最新文章

  1. ListView 添加头部 和尾部 布局 (addHeaderView 和 addFooterView)
  2. PE文件和COFF文件格式分析——导出表的应用——通过导出表隐性加载DLL
  3. 用数据告诉你王思聪到底有多少钱?
  4. 上海师范大学提前批计算机科学与技术,2020年上海师范大学提前批录取分数线公布...
  5. matlab计算运行时间方法
  6. error: 'for' loop initial declarations are only allowed in C99 or C11 mode
  7. i节点详解以及软连接和硬链接的区别
  8. 用GDB调试Segmentation Fault错误
  9. linux 网卡no carrier,linux centos 7 网卡突然不能上网异常解决
  10. python if elif else用法_python----if -- elif -- else 用法
  11. [leetcode]5325. 包含所有三种字符的子字符串数目
  12. sql怎么注销当前登录状态_4种方法教你获取Oracle数据库当前会话/进程的session id...
  13. python面向对象程序设计实验_实验七 面向对象程序设计
  14. mysql源码及内核分析,MySQL · 源码阅读 · Secondary Engine
  15. 手机java淘汰_极客修:对手并不止安卓!这些年iOS竟然把这么多手机系统淘汰掉了...
  16. 一人干翻专业机构,27岁华裔小伙一战成名!搞出美国新冠最准预测模型,彭博:Superstar
  17. Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-reso
  18. 解决“该项目不在请确认该项目位置,然后重试” 文件无法删除问题
  19. 引用 面向对象 String类(6)
  20. UBUNTU12下pyv8 的安装部骤

热门文章

  1. Markdown表格、单元格合并、快速编辑表格
  2. Amazon亚马逊常见的几种label
  3. React 全家桶入门教程 01
  4. 华为HCIA Cloud Computing 华为HCIA考证笔记(已获取该证书)
  5. 使用Python对excel中的数据进行处理
  6. 3. PyCharm、PyQt5、PyQt5-tools的下载安装、基于PyCharm开发PyQt5
  7. java实现809*两位数=800*两位数+9*两位数,求出两位数的值。其中8*两位数的结果为两位数,9*两位数的结果为三位数
  8. 【MM小贴士】SAP采购订单创建参考采购申请的强控
  9. 柔性传感器产业化将至或将成为折叠屏背后的“黑科技”
  10. 瓷砖铺贴方法_5种常见的瓷砖铺贴及施工方法