csv文件数据操作函数总结

这篇博客总结了C++中处理CSV文件的常见函数,包括文件流的使用,如ofstream、ifstream和fstream,以及文件操作如getline、erase、replace、find、find_first_of等。还介绍了字符串转换函数如atoi、stoi和itoa,并提到了文件指针操作和resize函数的应用。
摘要由CSDN通过智能技术生成

在C++课程设计中,由于采用了csv格式存储数据,故对文件操作涉及较多,在此总结一下csv文件格式的数据处理函数。


####C++文件流

流,简单来说就是建立在面向对象基础上的一种抽象的处数据的工具。在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等,程序员是对流进行所有操作的,而不用关心流的另一头数据的真正流向。流不但可以处理文件,还可以处理动态内存、网络数据等多种数据形式。如果你对流的操作非常熟练,在程序中利用流的方便性,写起程序会大大提高效率的。

####文件操作

以下类型需要包含头文件 < fstream>

ofstream 输出流:是从内存(控制台)读到硬盘;
ifstream 输入流:是从硬盘读到内存(控制台).
fstream 文件流:是可对打开的文件进行读写操作.

打开文件的方式 在类ios(是所有流式I/O类的基类)中定义,常用的值如下:
ios::app 文件不存在则创建, 在原文件内容后写入新的内容,app即单词 [append:附加] 的缩写。
ios::ate 文件打开后定位到文件尾,ios:app就包含有此属性
ios::binary 以二进制方式打开文件,缺省的方式是文本方式。两种方式的区别见前文
ios::in 文件以输入方式打开(文件数据输入到内存),文件不存在则创建(ifstream默认的打开方式)
ios::out 文件以输出方式打开(内存数据输出到文件), 文件不存在则创建,若文件已存在则清空原内容(ofstream默认的打开方式)
以下几个不常用:
ios::nocreate 不建立文件,所以文件不存在时打开失败
ios::noreplace 不覆盖文件,所以打开文件时如果文件存在失败
ios::trunc 如果文件存在,把文件长度设为0

关闭文件:file.close(); //与new之后要delete一样,打开文件后必须关闭文件

例:ifstream file(“d:\\date.csv”,ios::app); //路径名中的\要双写

####使用函数:

 ch = file.get(); //去读一个字符,然后才能用eof判断是否为空 
 if(file.eof())    //如果 一个字符都未读到,表示文件为空
 {
     ....
 }
//eof()函数要跟在读取语句后,用来判断是否读到文件结束符EOF。原因为:
//要清楚"文件结束符"(0xff).就是说我们文件最后的字符不是文件结束符,而最后的字符的下一位才是.所以操作再读多一次.

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值