用C++编写一个程序,与输入文件file1.txt建立联系,文件file1.txt的内容为Hello\nC++,定义out为fstream对象,与输出文件file2.txt建立关联,当文件打开成功后将file1.txt文件的内容转换为大写字母,输出到file2.txt文件中
时间: 2023-06-16 08:06:15 浏览: 182
以下是代码实现:
```c++
#include <iostream>
#include <fstream>
#include <string>
#include <cctype>
using namespace std;
int main()
{
// 打开输入文件
ifstream in("file1.txt");
if (!in)
{
cerr << "无法打开输入文件!" << endl;
return -1;
}
// 打开输出文件
ofstream out("file2.txt");
if (!out)
{
cerr << "无法打开输出文件!" << endl;
return -1;
}
// 读入并处理输入文件的内容
string str;
while (getline(in, str))
{
for (auto &c : str)
{
c = toupper(c);
}
out << str << endl;
}
// 关闭文件
in.close();
out.close();
return 0;
}
```
解释一下代码:
首先,我们使用 `ifstream` 类型的 `in` 对象打开输入文件 `file1.txt`,如果无法打开则输出错误信息并返回 -1。然后,我们使用 `ofstream` 类型的 `out` 对象打开输出文件 `file2.txt`,如果无法打开则同样输出错误信息并返回 -1。
接着,我们使用 `getline` 函数从输入文件中读入一行内容,存储到字符串变量 `str` 中。然后,我们遍历字符串中的每个字符,使用 `toupper` 函数将其转换为大写字母。最后,我们使用 `out` 对象将处理后的字符串输出到输出文件中,并在末尾加上换行符。
最后,我们关闭输入和输出文件,返回 0 表示程序运行成功。
注意:在运行程序之前,需要先创建输入文件 `file1.txt` 并将内容写入,以便程序可以正确读取和处理。
阅读全文