求大神解决啊,C++程序里用ignore为什么读出来是空的

这是程序:#include<iostream>#include<fstream>#include<string>usingnamespacestd;intmain(){s... 这是程序:
#include<iostream>
#include<fstream>
#include<string>

using namespace std;

int main()
{
string fileName,a,b,c;
ifstream inFile;

cout<<"please input the fileName"<<endl;
cin>>fileName;
inFile.open(fileName.c_str());
inFile.ignore(200,',');
inFile>>a;
inFile.ignore(200,',');
inFile>>b;
inFile.ignore(200,',');
inFile>>c;

cout<<a<<endl<<b<<endl<<c<<endl;

inFile.close();

return 0;
}
我要读取一个文本文档中的东西:the,dog,disk,boom.break,build。要忽略逗号以及逗号前的东西
展开
 我来答
zjfaok
2014-10-18 · TA获得超过6807个赞
知道大有可为答主
回答量:4146
采纳率:62%
帮助的人:1629万
展开全部
#include<iostream>
#include<fstream>
#include<string>

using namespace std;

int main()
{
string fileName,a,b,c;
ifstream inFile;

cout<<"please input the fileName"<<endl;
cin>>fileName;
inFile.open(fileName.c_str());
// if(not inFile.is_open()){
//    std::cerr<<"unable to open the file";
//    while(1);
//    return 0;
// }
inFile.ignore(200,',');
inFile>>a;
inFile.ignore(200,',');
inFile>>b;
inFile.ignore(200,',');
inFile>>c;

cout<<a<<endl<<b<<endl<<c<<endl;

inFile.close();

return 0;
}
更多追问追答
追问
不行啊,输出还是空的。。
追答
#include<iostream>
#include<fstream>
#include<string>
 
using namespace std;
 
int main()
{
    string fileName,a,b,c;
    ifstream inFile;
 
    cout<<"please input the fileName"<<endl;
    cin>>fileName;
    inFile.open(fileName.c_str());
    if(not inFile.is_open()){
        std::cerr<<"unable to open the file";
        while(1);
        return 0;
    }else{
        std::cerr<<"the file is successfully opened";
    }
 
    inFile.close();
 
    return 0;
}

看输出是什么

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式