社区
工具平台和程序库
帖子详情
getline()的问题
shiyanhld
2003-09-19 11:25:58
我用while加getline()循环从一个文件里一行一行读入,每行是以‘\n’定义结束的,可是当读入文件要是最后一行是一个空行,就是什么都没有的情况下界getline就没办法检查是否结束,请问怎样让getline()读到文件结尾终止,因为这个函数的第一个parameter可以是一个ifstream的对象,有没有办法判断这个对象是否不能再输出或者判断是否为空的办法?
...全文
1384
9
打赏
收藏
getline()的问题
我用while加getline()循环从一个文件里一行一行读入,每行是以‘\n’定义结束的,可是当读入文件要是最后一行是一个空行,就是什么都没有的情况下界getline就没办法检查是否结束,请问怎样让getline()读到文件结尾终止,因为这个函数的第一个parameter可以是一个ifstream的对象,有没有办法判断这个对象是否不能再输出或者判断是否为空的办法?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
马丁当
2004-02-08
打赏
举报
回复
while(!sin.eof())
{
getline(sin,content[i],'\n');
}
黑白猿
2003-09-29
打赏
举报
回复
我喜欢下面这个样子:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
char buff[80];
ifstream file("abc.txt",ios::in);
while(!file.eof())
{
file.getline(buff, 80, '\n');
cout << buff<< endl;
}
file.close();
system("pause");
return 0;
}
cxjddd
2003-09-29
打赏
举报
回复
要不自己在文件后面插入结束标志?
lyr311
2003-09-29
打赏
举报
回复
Mark!
lemon520
2003-09-29
打赏
举报
回复
到文件尾时,则在该点的读入操作失败。
tonybaobao
2003-09-20
打赏
举报
回复
getline默认就是以换行结束的。而且在txt文件中,换行是'\r\n'。
停止循环你可以设立一个flag,读到这个flag,停止。
shiyanhld
2003-09-20
打赏
举报
回复
up
RookieStar
2003-09-20
打赏
举报
回复
你可以这样:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
char str[80];
ifstream file("abc.txt",ios::in);
while(file.getline(str,80,'\n')&&!file.eof())
cout<<str<<endl;
file.close();
return 0;
}
shiyanhld
2003-09-20
打赏
举报
回复
我的是这样写的getline(sin,content[i],'\n');sin是一个ifstraem类对象用来打开要读取的文件,content是一个string数组,'\n'定义行的结束,然后我这样写的while(getline(sin,content,'\n')){i++;}可是当读到文件末尾的时候就出错了,因为最后一行要是空行getline是找不到'\n'的,这个如何控制?
getline
函数示例用法
较简单的程序代码,示例了
getline
函数使用技巧
getline
函数输入要击两次回车的解决办法
这个
getline
函数输入要击两次回车的解决办法不错..有点实用
C++ cin.
getline
及
getline
()用法详解
主要介绍了C++ cin.
getline
用法及C++
getline
()的两种用法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
老生常谈C++
getline
使用方法
下面小编就为大家带来一篇老生常谈C++
getline
使用方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
浅谈C++中字符串输入get与
getline
的区别
最近使用C++中自己老是忘记的一个点,get与
getline
的区别。 1、get与
getline
get和
getline
所属iostream类,作用是读取一整行,通过换行符确定读取结束,他们都可以读取空格。 2、get与
getline
区别
getline
会在读取结束后舍弃换行符,而get回将换行符保留到输入序列中。 char arr[100]; cout<<输入一段文字:<<endl; cin.
getline
(arr,20); //使用
getline
cin.get(arr,20); //使用get get与
getline
有两个参数,第一个参数是用来存储的
工具平台和程序库
24,855
社区成员
27,329
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章