C++文件处理

原创 2016年08月30日 17:39:04

C++要处理函数,首先要添加头文件# include ,这里边定义了类ofstream,ifstream。ofstream用来写操作,是将内存中的数据写出到文件中,ifstrea是将文件中的数据读入到内存中。ifstream和ofstrea对象调用open()和close()函数来打开和关闭文件。open函数的形式为void open(const char * filename, int mode, int access)。其中filename是一个字符串指针或一个常量字符串,表示要打开文件的名称, 一般设定mode和access为默认,open函数只穿入文件名即可打开文件。文件打开后,需要设定一个while循环来控制文件是否访问到结尾,while中的条件为(对象.peek() != EOF),在循环内部,对象调用getline()函数来获取文件每一行,那获取后的一行数据放到哪里呢?这里就需要定义一个string对象,用来存储获取文件的每一行数,上述的做法也可压缩为一句while(getline(文件对象,字符串对象))。获取到了每一行后,利用istringstream的对象来实现获取以空格为间隔符的数据。做法是:定义一个istringstream对象A,用刚获得的行string初始化对象A,在定义一个string对象B,利用while循环,将对象A中的数据以空格为间隔符,流入到对象B,对象B就是每行中每一个数据,形式为while(A >> B)。获得了数据后,即可对对象数据进行处理。处理读完文件后,需要对象调用close()函数来关闭文件。
写文件与读文件类似,首先需要定义ostream的对象,然后打开文件,然后将数据通过流操作符 << 将数据写入到文件对象中。之后还需要对象调用close()函数来关闭文件。
套路如下:

# include <fstream>
// 读文件
ifstream iFile;
iFile.open("文件名");
string strLine;
while(getline(iFile, strLine))
{
    istringstream is(strLine);
    string str;
    is >> str;
    // 获得的str为数据,之后就是处理数据了.
}
iFile.close();
// 写文件相对容易些.
ofstream oFile("文件名")
oFile << 数据;
oFile.close();

C++文件处理有很多中方法,也有高效和灵活的用法,等用的时候再记录它们吧,这里先记录最简单最基本的。
若有不对之处,敬请指正。

C++ .csv文件处理 与 sstream应用

在window上用C++处理.csv文件 1. 一般文件的读取利用头文件 2.处理.csv文件 3.了解...
  • qq_29596177
  • qq_29596177
  • 2016年03月16日 22:42
  • 839

C++文件的批处理

C++文件的批处理 时间:2012-07-23 09:43点击:45 次 【大 中 小】 一、统计代码行数   几个星期前做了个统计代码的小程序,对文件的批处理需要获取文件列...
  • pi9nc
  • pi9nc
  • 2013年01月11日 19:39
  • 742

C/C++文件操作,数据处理

这几天工作的过程中,常常要对TXT中的数据进行处理、分析。以前在学校时,对文件操作、文件内容处理的这部分知识用的不是很多,这几天用这些知识的时候,总是不太熟悉,要不停查阅资料。因此,这里总结一下,方便...
  • look122333
  • look122333
  • 2013年11月17日 15:10
  • 2013

C/C++文件操作经验总结

最近在做一个从groundtruth_rect.txt中读取按行存储的矩形元素(x, y, w, h),文本存储的格式如下: 310,102,39,50 308,100,39,50 306,99,3...
  • LG1259156776
  • LG1259156776
  • 2015年07月24日 10:36
  • 1461

C++文件操作典型案例

案例一:     1.打开文件,显示其中内容     2.向其中追加记录     3.显示追加之后的文件内容         #include         #include      ...
  • X__dream
  • X__dream
  • 2016年01月22日 20:54
  • 852

c++处理大量数据

用内存映射应该行的。内存映射就是把一个文件当作一块内存区域用。 类别: 内存映射文件 题目:对一个文件使用内存映射文件 Demo: 1:创建或打开一个文件内核对象: // Open the ...
  • dxy408460910
  • dxy408460910
  • 2013年07月15日 14:24
  • 465

C++中的文件路径表示技巧

文件路径的表示可以分为绝对路径和相对路径:   绝对路径表示相对容易,例如   //pDummyFile = fopen("D:\\vctest\\glTexture\\texture\\dummy....
  • zdhlwt2008
  • zdhlwt2008
  • 2015年07月07日 16:46
  • 5035

c++进阶---IO类详解(二)--文件流的详解

前言在上一篇博客,我们已经主要介绍了IO类是什么和对标准输入流cin做了比较详细的介绍,这篇博客我们就来开始学习另外一类IO类:ifstream 、oftream、fstream。我们称之为文件流,主...
  • qq_35644234
  • qq_35644234
  • 2017年03月05日 21:21
  • 639

java文件处理 之 读写TXT(比之c++,重置文件头,int转string)

一:c/c++ 处理文件的用法,详见博客 c++文件操作 二:java与c++的方便之处: (1) java在读取文件时,可以对字符流进行处理,重新进行编码,如 InputStreamReader r...
  • u010700335
  • u010700335
  • 2014年10月16日 20:57
  • 2084

[原]用c++读取文件,依次读取文件…

今天在编代码的时候,需要读取文件,并且要依次识别文件中的单词。查了好多资料,方法挺零碎的。下面进行整理了一下。 首先提供一个作者的逐次读取的方法。原文链接为http://blog.csdn.net/...
  • lanxin0802
  • lanxin0802
  • 2017年03月24日 11:21
  • 361
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C++文件处理
举报原因:
原因补充:

(最多只允许输入30个字)