C++文件处理
📌 新建文件
//这是要操作的文件名称
string str_filename = "E:/data/t/haha.txt";
//创建一个流对象 o 就是从这个流对象出去, 出到哪里, 当然是我们要建立的文件
ofstream ofs;
//out会覆盖
ofs.open(str_filename, ios::out);
ofs << "我创建了一个文件, 向里面写入内容1" << endl;
📌 删除文件
//里面填要删除的文件名
remove(str_filename.c_str());
📌 查询文件是否存在
编辑器抽风, 我这里看着是好的, 以后再改了
//创建一个stat
struct stat buffer;
//这里要调用c_tr()转下型
if(stat(str_filename.c_str(), &buffer) == 0) cout<<"这个文件存在"<<endl;
else cout<<"这个文件不存在"<<endl;
-
写成函数
inline bool if_the_file_exists(const std::string& name) { struct stat buffer; return (stat(name.c_str(), &buffer) == 0); }
📌 btw 查看文件内容
ifstream ifs;
ifs.open(str_filename, ios::in);
char ch;
while (ifs >> noskipws >> ch)
cout << ch;
📌 修改文件数据
-
修改文件名
//老名字 string old_name = "xxx"; //新名字 string new_name = "zzz"; //改名 if (!rename(old_name.c_str(), new_name.c_str())) { cout << "改名成功" << endl; }
-
覆写(见新建文件)
-
追加内容
//创建一个流对象 o 就是从这个流对象出去, 出到哪里, 当然是我们要建立的文件
ofstream ofs2;
//app是追加
ofs2.open(str_filename, ios::app);
ofs2 << "我创建了一个文件, 向里面写入内容2" << endl;
ofs2.close();
📌 复制文件(待续)
📌 加密解密