编写一段程序:成绩: 5 / 折扣: 0.8 从键盘输入要读入的文件名,如果是grade.txt,则输出文件内容。如果不是grade.txt,则输出文件打开失败(本题要求用异常处理机制来实现)
时间: 2024-03-25 11:37:47 浏览: 49
下面是一段使用异常处理机制的C++程序,实现了上述功能:
```cpp
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
string filename;
cout << "请输入要读取的文件名:";
cin >> filename;
try {
ifstream file(filename);
if (!file) {
throw "文件打开失败";
}
string content;
while (getline(file, content)) {
cout << content << endl;
}
file.close();
}
catch (const char* msg) {
cerr << msg << endl;
}
catch (...) {
cerr << "未知异常" << endl;
}
return 0;
}
```
程序首先从键盘输入要读取的文件名,然后使用try-catch语句来捕获异常。在try块中,程序尝试打开文件,并读取文件内容输出到屏幕上。如果文件打开失败,程序抛出一个异常。在catch块中,程序捕获并输出异常信息。如果捕获到未知异常,则输出“未知异常”。
阅读全文