C++ Linux中如何实现文件操作
导读:在C++中,你可以使用标准库中的<fstream>头文件来实现文件操作。这个头文件提供了ifstream、ofstream和fstream三个类,分别用于读取、写入和读写文件。 下面是一些基本的文件操作示例: 打开文件 #inc...
在C++中,你可以使用标准库中的<
fstream>
头文件来实现文件操作。这个头文件提供了ifstream、ofstream和fstream三个类,分别用于读取、写入和读写文件。
下面是一些基本的文件操作示例:
打开文件
#include <
fstream>
#include <
iostream>
int main() {
// 创建一个输出文件流对象,并打开一个文件用于写入
std::ofstream outFile("example.txt");
// 检查文件是否成功打开
if (!outFile.is_open()) {
std::cerr <
<
"Unable to open file for writing!" <
<
std::endl;
return 1;
}
// 写入数据到文件
outFile <
<
"Hello, World!" <
<
std::endl;
// 关闭文件
outFile.close();
return 0;
}
读取文件
#include <
fstream>
#include <
iostream>
#include <
string>
int main() {
// 创建一个输入文件流对象,并打开一个文件用于读取
std::ifstream inFile("example.txt");
// 检查文件是否成功打开
if (!inFile.is_open()) {
std::cerr <
<
"Unable to open file for reading!" <
<
std::endl;
return 1;
}
// 读取文件内容到字符串
std::string line;
while (std::getline(inFile, line)) {
std::cout <
<
line <
<
std::endl;
}
// 关闭文件
inFile.close();
return 0;
}
追加数据到文件
#include <
fstream>
#include <
iostream>
int main() {
// 创建一个输出文件流对象,并以追加模式打开一个文件
std::ofstream outFile("example.txt", std::ios::app);
// 检查文件是否成功打开
if (!outFile.is_open()) {
std::cerr <
<
"Unable to open file for appending!" <
<
std::endl;
return 1;
}
// 追加数据到文件
outFile <
<
"Appended text!" <
<
std::endl;
// 关闭文件
outFile.close();
return 0;
}
二进制文件操作
对于二进制文件的读写,你可以使用std::ios::binary标志:
#include <
fstream>
#include <
iostream>
int main() {
// 写入二进制文件
{
std::ofstream outFile("example.bin", std::ios::binary);
if (!outFile.is_open()) {
std::cerr <
<
"Unable to open file for writing binary data!" <
<
std::endl;
return 1;
}
int data = 42;
outFile.write(reinterpret_cast<
const char*>
(&
data), sizeof(data));
outFile.close();
}
// 读取二进制文件
{
std::ifstream inFile("example.bin", std::ios::binary);
if (!inFile.is_open()) {
std::cerr <
<
"Unable to open file for reading binary data!" <
<
std::endl;
return 1;
}
int data;
inFile.read(reinterpret_cast<
char*>
(&
data), sizeof(data));
std::cout <
<
"Read from file: " <
<
data <
<
std::endl;
inFile.close();
}
return 0;
}
在使用文件流时,记得检查文件是否成功打开,并在操作完成后关闭文件。这样可以避免资源泄露和其他潜在的问题。此外,对于大型文件操作,考虑使用缓冲区来提高效率。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: C++ Linux中如何实现文件操作
本文地址: https://pptw.com/jishu/776298.html
