一、打开文件

打开文件使用库函数中的fopen函数。fopen函数会为要打开的文件新建一个流,然后返回一个指向file型对象的指针,该file型对象中保存了控制这个流所需要的信息。

fp=fopen("1.txt","r")

这里fp可以任意命名,fp不是流的实体,而是指向流的指针。接收两个参数,一个是文件名,另一个是打开文件的模式。

打开文件的mode模式有:

Mode

描述

r

以只读模式打开文件

w

以只写模式打开文件,若文件存在则文件长度清0

a

以追加模式(从文件末尾处开始的只写模式)打开或建立文本文件

rb

以只读模式打开二进制文件

wb

以只写模式打开二进制文件,若文件存在则文件长度清0

ab

以追加模式(从文件末尾处开始的只写模式)打开或建立二级制文件

r+

以读写模式打开文件

w+

以读写模式打开文件,若文件存在则文件长度清0

a+

以追加模式(文件末尾处开始写入的更新模式)打开或建立文本文件

r+b或rb+

以读写模式打开二进制文件

w+b或wb+

以读写模式建立二进制文件,若文件存在则文件长度清0

a+b或ab+

以追加模式(文件末尾处开始写入的更新模式)打开或建立二进制文件

以读取模式(mode以字符'r开头')打开文件时,如果该文件不存在或者没有读取权限,则文件打开失败。

对于追加模式(mode以字符'a'开头)打开的文件,打开后的写入操作都是从文件末尾处开始的。

对于以读写模式(mode的第2或第3个字符为'+')打开的文件相关联的流,可以进行输入和输出操作。但若要在输出操作之后进行输入操作,就必须在这两个操作之间调用文件定位函数(fseek、fsetpos或rewind)。

返回一个指向对象的指针,该对象用于控制打开的流。打开操作失败时,返回空指针。

二、关闭文件

当文件操作完毕后一定要关闭文件,目的是刷新stream流,将保存在缓存中的内容写入到文件中。

fclose(fp)

若成功的关闭流,则返回0,否则返回EOF。

完整的打开关闭文件例子:

从键盘读入文件名,并打开:

三、文件数据汇总

要从文件中读取数据需要用fscanf函数。fscanf可以对任意流执行与scanf函数相同的输入操作,比scanf多一个参数。

fscanf(fp,"%d",&x)

函数将取到的数据保存在参数x中,若没有执行任何转换就发生了输入错误,则返回定义的EOF错误,否则返回成功赋值的输入项数。若在输入中发生匹配错误,则返回的输入项会少于转换说明符对应的实参个数,甚至为0。

练习:从指定文件读入数据,对其中的身高进行从高到低排序:

test.txt文件内容:

源代码:

四、向文件写入数据

printf函数是向标准输出流进行输出的函数,而向任意流执行同样操作就是fprintf函数。

fprintf(fp,"%d",x)

练习1:写入日期和时间

将当前日期和时间写入指定文件

练习2:从键盘读取名字、身高和体重信息,并写入文件

五、文件内容的显示与复制

将A文件的内容读取后写入到B文件中。fgetc()函数:读文件函数(由文件中读取一个字符)

练习1:复制A文件内容到B文件

练习2:显示文件内容

练习3:统计读入文件的文件行数

注:对最后一行处理时需要注意,最后一行如果为换行符则不需要操作,如果不为换行符则需要对count再加一行!

六、在二进制文件中保存实数

fwrite和fread函数分别用于二进制文件的写入与读取。

文件写入函数为:

fwrite(&pi,sizeof(double),1,fp)

文件读取函数为:

fread(&pi,sizeof(double),1,fp)

Loadrunner脚本之C语言文件处理函数的更多相关文章

  1. C语言文件操作函数

    C语言文件操作函数大全 clearerr(清除文件流的错误旗标) 相关函数 feof表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * str ...

  2. C语言文件操作函数大全(超详细)

    C语言文件操作函数大全(超详细) 作者: 字体:[增加 减小] 类型:转载 本篇文章是对C语言中的文件操作函数进行了详细的总结分析,需要的朋友参考下   fopen(打开文件)相关函数 open,fc ...

  3. c语言文件操作函数详解

    一.文件操作注意点: 1 打开文件时,如果打开方式加“+”,表示该文件可以“写” ; 2 退出程序一般用exit函数,正常退出参数为0,非正常退出参数为正零值 ; 3 文件的读写操作:按字符.字符串. ...

  4. C语言文件操作函数大全

    http://blog.csdn.net/mu0206mu/article/details/18980913 clearerr(清除文件流的错误旗标) 相关函数 feof表头文件 #include&l ...

  5. [转]C语言文件操作函数大全(超详细)

    fopen(打开文件)相关函数 open,fclose表头文件 #include<stdio.h>定义函数 FILE * fopen(const char * path,const cha ...

  6. 04--C语言文件操作函数大全(超详细)

    fopen(打开文件)相关函数 open,fclose表头文件 #include<stdio.h>定义函数 FILE * fopen(const char * path,const cha ...

  7. C语言文件操作函数之ferror & feof & clearerr

    这些函数都是和文件读写时发生错误有关,下面一一分析: 1:ferror 原型:int ferror(FILE * fp) 作用:测试一个文件流是否被设置了错误标识符,如果是返回非 0 整数,否则返回 ...

  8. C 语言文件操作

    C 语言文件操作 1. 数据流:     程序与数据的交互以流的形式进行.fopen 即打开数据流,fclose 即刷新数据流.     所谓数据流,是一种抽象,表示这段数据像流一样,需要逐步接收,不 ...

  9. Loadrunner脚本读取 XMl 文件

    Loadrunner脚本读取 XMl 文件 性能测试工程师要懂代码么?答案是必须的,好多测试员认为在 loadrunner 中编写脚本很难很牛 X . 好多人认为 loadrunner 只支持 C 语 ...

随机推荐

  1. Wireshark 网络抓包工具Wireshark的使用

    阅读目录 wireshark介绍 wireshark不能做的 wireshark VS Fiddler 同类的其他工具 什么人会用到wireshark wireshark 开始抓包 wireshark ...

  2. HttpClient基本用法

    <Apache HttpClient 4.3开发指南> Apache HttpClient 4系列已经发布很久了,但由于它与HttpClient 3.x版本完全不兼容,以至于业内采用此库的 ...

  3. MyBatis学习总结_10_批量操作

    一.mybatis中的批量操作    批量操作核心就是一次传入多个数据然后进行相关操作,增删改查中掌握其中一个其他的也不成问题 1.最新在做的短信平台,要批量插入群发的短信记录: 当然批量操作还有:批 ...

  4. docker 笔记(基本概念、快速运行、自定义镜像)

    1.docker docker是一个打包应用的工具 非常强大,能把操作系统也打在包里,进行无差别部署和运行. 所以docker也被认为是建立在操作系统上的虚拟机.   2.基本概念 镜像(image) ...

  5. 乙醇脱氢酶力场文件的处理(含ZN,NAD,乙醇)

    很多蛋白质在行驶生物催化反应(如ATP水解,氨基酸的乙酰化,CoA的去乙酰化,甲基化等等)都需要金属离子(Mg,Zn,Ca等等)的参与,换句话说,金属离子对蛋白功能是必须的.模拟金属酶体系,现在也是分 ...

  6. Docker仓库搭建(Registry + Portus)

    1.更新系统: yum update -y 2. 安装docker-compos yum -y install epel-release    #pip安装包在epel源中   yum -y inst ...

  7. 使用git建立本地仓储管理代码【转】

    转自:http://blog.csdn.net/airk000/article/details/7738231 Git是Linus大神的代码管理工具,简直说是开发者的超级福音,而作为屌丝的个人开发者, ...

  8. (5)XML转化成TXT

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...

  9. 《OD大数据实战》Flume环境搭建

    一.CentOS 6.4安装Nginx http://shiyanjun.cn/archives/72.html 二.安装Flume 1. 下载flume-ng-1.5.0-cdh5.3.6.tar. ...

  10. Git基础(二)

    本章内容将介绍第二部分:本地仓储操作.为了加深对每个命令操作的理解,我们可以事先获取一个仓储边学边操作.这里首先 你要明白一个概念,所有本地工作目录下的文件状态无不在乎两种,已跟踪和未跟踪.已跟踪文件 ...