2024/7/28
C++文件操作
fstream 是 C++ 标准库中的头文件,它提供了用于文件输入输出的类和相关函数。使用 fstream 头文件,我们可以创建文件流对象,打开、读写文件,并进行其他文件操作。
fstream 头文件定义了三个主要的文件流类:
std::ifstream:用于从文件中读取数据的输入流对象。
std::ofstream:用于向文件中写入数据的输出流对象。
std::fstream:用于读写文件的输入输出流对象。
写入文件
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ofstream ofs;//创建 ofstream 对象
ofs.open("./a.txt",ios::ate/*初始位置为文件尾*/);//打开文件
string a="testb\n";
string b="testa\n";
ofs<<"aaa"<<a<<b;//写入字符串到文件
ofs.close();//关闭文件
return 0;
};
读取文件
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
ifstream isf("./b.txt");//创建ifstream对象,设置文件为./b.txt
while(isf.good()/*检测是否读写正常,没有文件末尾*/)
{
string a;
getline(isf,a);//将文件中的每行读取到字符串a中
cout<<a<<"\n";//输出
}
return 0;
}
控制fstream,ofstream和ifstream的标志
ios::in
为读文件而打开
ios::out
为写文件而打开
ios::ate
设置初始位置为文件末尾
ios::app
将所有的输出附加在文件的末尾
ios::trunc
如果文件存在先删除
ios::binary
二进制形式
如何组合使用?
可以用按位或运算符" | "来组合使用
例如:
ofstream ofs;
ofs.open("./a.txt",ios::ate||ios::trunc);