首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

fstream open()有关问题

2012-06-20 
fstream open()问题int main(){vectorstring filesstring fileName,scoutEnter filenames (Ctrl Z

fstream open()问题
int main()
{
vector<string> files;
string fileName,s;
cout<<"Enter filenames (Ctrl Z to the end): "<<endl;
while (cin>>fileName)
{
files.push_back(fileName);
 }
ifstream input;
vector<string>::const_iterator it=files.begin();
while(it!=files.end())
{
input.open(it->c_str());
if(!input)
{
cerr<<"error:can not open file:"<<*it<<endl;
input.clear();
++it;
}
else
{
while(input>>s)
process(s);
input.close();
input.clear();
++it;
}
}
return 0;

}

void process(string s)
{
cout<<s;
}


为什么打开文件都失败了啊!!!
每次都是运行的cerr<<"error:can not open file:"<<*it<<endl;

[解决办法]
ifstream 是读取已有文件,不能创建新文件,如果文件不存在就会报错
你要使用ofstream 这个可以在文件不存在是创建文件。

热点排行