在Ubuntu环境下,C++处理文件输入输出主要使用iostream库和fstream库。iostream库主要用于处理标准输入输出,而fstream库主要用于处理文件输入输出。下面是一些基本的文件输入输出操作示例:
#include <iostream>
#include <fstream>
#include <string>
std::ifstream inputFile("input.txt"); // 打开名为input.txt的文件用于读取
std::ofstream outputFile("output.txt"); // 打开名为output.txt的文件用于写入
if (!inputFile.is_open()) {
std::cerr << "无法打开输入文件" << std::endl;
return 1;
}
if (!outputFile.is_open()) {
std::cerr << "无法打开输出文件" << std::endl;
return 1;
}
std::string line;
while (std::getline(inputFile, line)) {
std::cout << line << std::endl; // 将文件内容输出到控制台
}
outputFile << "Hello, World!" << std::endl; // 向文件写入一行内容
inputFile.close();
outputFile.close();
下面是一个完整的示例,该程序从名为input.txt的文件中读取内容,并将内容写入名为output.txt的文件:
#include <iostream>
#include <fstream>
#include <string>
int main() {
std::ifstream inputFile("input.txt");
std::ofstream outputFile("output.txt");
if (!inputFile.is_open()) {
std::cerr << "无法打开输入文件" << std::endl;
return 1;
}
if (!outputFile.is_open()) {
std::cerr << "无法打开输出文件" << std::endl;
return 1;
}
std::string line;
while (std::getline(inputFile, line)) {
outputFile << line << std::endl;
}
inputFile.close();
outputFile.close();
return 0;
}
在编译和运行此程序之前,请确保在Ubuntu环境下已经安装了g++编译器。可以使用以下命令安装:
sudo apt-get install g++
然后使用以下命令编译和运行程序:
g++ main.cpp -o main
./main