gpt4 book ai didi

c++ - 一次又一次尝试在给出错误路径的同时打开文件

转载 作者:行者123 更新时间:2023-11-28 06:37:15 28 4
gpt4 key购买 nike

我刚刚开始第一次使用 C++ 处理文件,我想编写一个正确的程序,它允许我:

  1. 打开给出路径的文件;
  2. 如果打开失败(显示哪个错误无关紧要),请问一条新路径;
  3. 处理文件;
  4. 关闭文件;

我唯一做不到的是第二点。我已经尝试过类似的想法:

do{
cout<<"Path: ";cin>>path;
f.open(path, ios::in);
}while(f.fail());

但是如果我写一个不存在的文件的路径,然后写一个我想打开的文件的路径,程序会不断地问我一个新的路径并且永远不会停止。

附言= 如果我想使用该条件来防止在使用 ios::out 创建新文件时出现错误(例如:包含非法字符的文件名/扩展名),情况会有所不同吗?

最佳答案

如果不成功,清除标志

f.open( path, ios::in ) ;
while( f.fail() )
{
f.clear();
std::cout<<"Incorrect file path, Re-Enter ";
std::cin>>path;
f.open( path, ios::in ) ;
}

关于c++ - 一次又一次尝试在给出错误路径的同时打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26591973/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com