如何在C++文件操作是判断是否到了每一行的结尾?

我想从TXT中读取数据,但是数据长短个数不一样,我要确定每一行为一组数据。所以想判断是否到了每一行的结尾。... 我想从TXT中读取数据,但是数据长短个数不一样,我要确定每一行为一组数据。所以想判断是否到了每一行的结尾。 展开
 我来答
OYL_QuaN
推荐于2018-03-23 · TA获得超过236个赞
知道答主
回答量:57
采纳率:0%
帮助的人:54.7万
展开全部
\n 判断行数是不准确的。
ifstream infile("a.txt",ios::in);
if(! infile)
{
cerr<<"open error!"<<endl;
exit(1);
}
while(!infile.eof())
{
char *buf =new char[1024];
infile.getline(buf,'\r\n');
count++;
}
这是我最近写的一个获取行数的代码。count为最後获取的行数。你看看有没有参考价值吧。
不过我说一下,判断行的结束,我试过\n是不行的,不准确。具体原因我也没搞懂。後来我用\r\n作为判断条件就正确了。
我是读取一个5000多行的txt文件,最後count出来的行数跟我用ultraedit所看到的行数是相匹配的。
本程序代码可能效率不高,但是亲测判断条件是可行的。谢谢!
cpucash
推荐于2016-02-20 · TA获得超过1584个赞
知道小有建树答主
回答量:1457
采纳率:66%
帮助的人:969万
展开全部
你以字符串读入不就可以了,不用判断是否到行结尾
一般用这个语句
while(fscanf(fp1,"%s",a)!=EOF)
这样就按行读入数据直到文件结束
该怎么处理,在这个while循环中做即可
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yunxiaoxue027
2013-08-16 · 超过23用户采纳过TA的回答
知道答主
回答量:81
采纳率:0%
帮助的人:55.1万
展开全部
#include<iostream>
#include<fstream>
using namespace std;
int main()
{
fstream infile;
infile.open("infile.txt",ios::in);
if(!infile)
{
cout<<"infile.txt can't open."<<endl;
abort();
}
char ch;
while(!infile.eof())
{
if(infile.get(ch)=='\n')
{
//输入你要执行的内容
}
cout <<ch<<" ";
};
cout<<endl;
infile.close();
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
飞瑶小饕餮
2013-08-16 · TA获得超过135个赞
知道小有建树答主
回答量:160
采纳率:100%
帮助的人:104万
展开全部
char ch;
fgetc(fp)读一个字 if((ch=fgetc(fp))=='\n')判断是否是一行结束

char buf[1024];
fgets(buf,1024,fp);这个是一行一行的读
char name[1024],number[1024],department[1024];
按空格格式放入数组
sscanf(buf,"%s %s %s",name,number,department);
zhangsan two eng
按逗号放入数组
sscanf(buf,"%s,%s,%s",name,number,department);
zhangsan,two,eng

望采纳,还有不懂可以问我
追问
- - 我用的是fstream,之前那个我也知道。但是这个不会弄啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阳顶天鹿鼎记
2013-08-16 · TA获得超过502个赞
知道小有建树答主
回答量:675
采纳率:100%
帮助的人:405万
展开全部
你可以直接用取一行的函数不就行了,getline函数
追问
比如姓名, 性别,年龄,学生号,这都是分开的数据啊  用getline是读到一个字符串里面。不好区分啊
追答
中间没有间隔么,判断下就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式