Loadrunner脚本之C语言文件处理函数
一、打开文件
打开文件使用库函数中的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语言文件处理函数的更多相关文章
- C语言文件操作函数
C语言文件操作函数大全 clearerr(清除文件流的错误旗标) 相关函数 feof表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * str ...
- C语言文件操作函数大全(超详细)
C语言文件操作函数大全(超详细) 作者: 字体:[增加 减小] 类型:转载 本篇文章是对C语言中的文件操作函数进行了详细的总结分析,需要的朋友参考下 fopen(打开文件)相关函数 open,fc ...
- c语言文件操作函数详解
一.文件操作注意点: 1 打开文件时,如果打开方式加“+”,表示该文件可以“写” ; 2 退出程序一般用exit函数,正常退出参数为0,非正常退出参数为正零值 ; 3 文件的读写操作:按字符.字符串. ...
- C语言文件操作函数大全
http://blog.csdn.net/mu0206mu/article/details/18980913 clearerr(清除文件流的错误旗标) 相关函数 feof表头文件 #include&l ...
- [转]C语言文件操作函数大全(超详细)
fopen(打开文件)相关函数 open,fclose表头文件 #include<stdio.h>定义函数 FILE * fopen(const char * path,const cha ...
- 04--C语言文件操作函数大全(超详细)
fopen(打开文件)相关函数 open,fclose表头文件 #include<stdio.h>定义函数 FILE * fopen(const char * path,const cha ...
- C语言文件操作函数之ferror & feof & clearerr
这些函数都是和文件读写时发生错误有关,下面一一分析: 1:ferror 原型:int ferror(FILE * fp) 作用:测试一个文件流是否被设置了错误标识符,如果是返回非 0 整数,否则返回 ...
- C 语言文件操作
C 语言文件操作 1. 数据流: 程序与数据的交互以流的形式进行.fopen 即打开数据流,fclose 即刷新数据流. 所谓数据流,是一种抽象,表示这段数据像流一样,需要逐步接收,不 ...
- Loadrunner脚本读取 XMl 文件
Loadrunner脚本读取 XMl 文件 性能测试工程师要懂代码么?答案是必须的,好多测试员认为在 loadrunner 中编写脚本很难很牛 X . 好多人认为 loadrunner 只支持 C 语 ...
随机推荐
- Gravitational Teleport 是一个先进的 SSH 服务器,基于 Golang SSH 构建,完全兼容 OpenSSH
Gravitational Teleport 是一个先进的 SSH 服务器,可通过 SSH 或者 HTTPS 远程访问 Linux 服务器.其目的是为了替代 sshd.Teleport 可以轻松让团队 ...
- TCP三次握手和四次挥手过程及套接字在各个过程中的状态解析
说起TCP,我们一般都需要知道发起一个tcp连接和终止一个tcp连接是所发生的事情,下边,我将跟大家介绍下tcp的三次握手及四次挥手的过程. TCP三路握手 (1)服务器必须准备好接受外来的连接.这通 ...
- Oracle ->> 层级查询语句(hierarchical query)connect by
Oracle中的Connect By... Start With语句实现了递归查询或者树状查询. Connect By Prior 一方为起始(root)的ID 参考: http://www.360d ...
- 安装hma master出错 Error: Package: perl-Mail-Sender-0.8.13-2.el5.1.noarch
You are using the EPEL 5 version of the repo instead of 6, go into your /etc/yum.repos.d/epel.repo f ...
- Linux 下安装python软件包(pip、nose、virtualenv、distribute )
新手刚开始学习Python,目前学习<笨方法学python>ing- 在学习习题46时需要安装几个软件包:pip.nose.virtualenv.distribute !在此记录Linux ...
- MINA经典入门例子----Time Server
原文地址 http://blog.sina.com.cn/s/blog_720bdf0501010b8r.html 貌似java的IO.NIO的入门例子都有相关的Time Server Demo.本例 ...
- 图片缓存之内存缓存技术LruCache,软引用
每当碰到一些大图片的时候,我们如果不对图片进行处理就会报OOM异常, 这个问题曾经让我觉得很烦恼,后来终于得到了解决, 那么现在就让我和大家一起分享一下吧. 这篇博文要讲的图片缓存机制,我接触到的有两 ...
- laravel Event执行顺序
laravel一大特色就是event事件系统.一般首先要listen一个事件,随后fire那个事件,这时执行路径将会调用event handler,返回后继续执行.例如: Event::listen( ...
- bzoj4026
直接按照欧拉函数的计算方式来即可 φ=区间积*区间出现(质数-1)的积/区间出现过的质数的积 区间积是满足类似区间减法的操作的(利用逆元) 由于强制在线,上主席树就可以了(维护每个质数上次出现的位置p ...
- 51nod1052 最大M子段和
dp优化我总是不太熟练.这一次首先我写了O(n4)->O(n3)->O(n2).一步步的优化过来.yyl好像用的是单调队列优化dp我看不懂他的代码... O(n4) #include< ...