在Linux下,C++可以使用标准库中的<fstream>
来进行文件操作。这个库提供了ifstream
、ofstream
和fstream
三个类,分别用于输入(读取)、输出(写入)和输入输出操作。
以下是一些基本的文件操作示例:
#include <fstream>
#include <iostream>
int main() {
std::ifstream inputFile("example.txt"); // 打开一个名为example.txt的文件用于读取
if (!inputFile.is_open()) {
std::cerr << "Unable to open file for reading!" << std::endl;
return 1;
}
// ... 进行读取操作 ...
inputFile.close(); // 关闭文件
return 0;
}
#include <fstream>
#include <iostream>
int main() {
std::ofstream outputFile("example.txt"); // 打开一个名为example.txt的文件用于写入
if (!outputFile.is_open()) {
std::cerr << "Unable to open file for writing!" << std::endl;
return 1;
}
outputFile << "Hello, World!" << std::endl; // 写入数据到文件
outputFile.close(); // 关闭文件
return 0;
}
#include <fstream>
#include <iostream>
int main() {
std::ofstream outputFile("example.txt", std::ios::app); // 打开一个名为example.txt的文件用于追加
if (!outputFile.is_open()) {
std::cerr << "Unable to open file for appending!" << std::endl;
return 1;
}
outputFile << "Appended text." << std::endl; // 追加数据到文件
outputFile.close(); // 关闭文件
return 0;
}
#include <fstream>
#include <iostream>
#include <string>
int main() {
std::ifstream inputFile("example.txt"); // 打开一个名为example.txt的文件用于读取
if (!inputFile.is_open()) {
std::cerr << "Unable to open file for reading!" << std::endl;
return 1;
}
std::string line;
while (std::getline(inputFile, line)) { // 逐行读取文件
std::cout << line << std::endl; // 输出每一行的内容
}
inputFile.close(); // 关闭文件
return 0;
}
#include <fstream>
#include <iostream>
int main() {
std::ifstream inputFile("example.txt"); // 打开一个名为example.txt的文件用于读取
if (!inputFile.is_open()) {
std::cerr << "Unable to open file for reading!" << std::endl;
return 1;
}
std::string line;
while (std::getline(inputFile, line)) { // 逐行读取文件
// 处理每一行的内容
}
if (inputFile.eof()) {
std::cout << "Reached end of file." << std::endl;
} else if (inputFile.fail()) {
std::cerr << "Error occurred while reading the file." << std::endl;
}
inputFile.close(); // 关闭文件
return 0;
}
这些示例展示了如何在Linux下使用C++进行基本的文件操作。在实际应用中,你可能需要根据具体需求进行更复杂的文件读写操作。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
相关推荐:C++在Linux如何进行文件操作