一种好用的文件格式—csv文件
在电子技术中,经常涉及到大量的数据处理工作。将采集到的数据导入Excel文件,可以很方便地利用Excel中封装的大量公式函数完成进一步的数据计算处理工作。因此在自动化测试技术中,通常将采集到的数据存入Excel(.xls)文件中。
然而在使用VC++对Excel文件进行操作时,涉及到对COM接口,因而操作较复杂,不利于应用和掌握。本文介绍一种好用的文件格式—逗号分隔符文件(.CSV),既可以用Excel直接打开并进行数据的计算处理,又能像操作文件文件(.txt)一样简单,而且逗号分隔符文件(.CSV)所占的磁盘空间比Excel文件(.xls)要小。
CSV是Comma Separated Value(逗号分隔值)的英文缩写,CSV格式文件通常都是纯文本文件。每两个单元格之间用半角的逗号(,)隔开,其余跟文件文件(.txt)没有差别。
往一个文本文件中写入内容“12,34”,用记事本打开,则显示内容为“12,34”。若将此文件的后缀名改为“.csv”,再鼠标双击此文件,则Windows默认用Excel打开CSV文件,显示的内容见图1右侧。可以看出Excel打开CSV文件后已自动将12和34写入两个单元格,此时可以用Excel中的公式函数对数据进行处理。
图1 txt文件和csv文件打开内容对比
在VC++中对CSV文件的操作可以采用fstream类的插入操作符“<<”。使用fstream类之前必须包含fstream.h头文件。fstream类包含输出方式ofstream和输入方式ifstream。关于fstream类的具体用法可参看相类文件,本文重点介绍VC++中对CSV文件的操作。下面举例介绍在VC++中如何对CSV文件进行操作。
#include<fstream> //首先包含fstream头文件
ofstream of1; //创建文件
of1.open("rec.csv",ios::out,filebuf::openprot); //打开文件
int a,b; //定义两个整型变量
a=12;b=34; //给变量赋值
of1<<a<<’,’<<b; //写入数据,中间用半角逗号’,’隔开
of1.close(); //关闭文件
运行上面这段代码后,双击程序生成的rec.csv文件,显示的结果如图1中右侧所示。
注:在对ofstream类进行操作之前,必须先创建ofstream文件,否则文件会创建失败。若将上面的代码改为如下,则创建rec.csv文件会失败,即打开文件夹后没有rec.csv文件。
#include<fstream> //首先包含fstream头文件
ofstream of1; //创建文件
int a,b; //定义两个整型变量
a=12;b=34; //给变量赋值
of1<<a<<’,’<<b; //写入数据,中间用半角逗号’,’隔开
of1.open("rec.csv",ios::out,filebuf::openprot); //打开文件
of1.close(); //关闭文件