C++ 标准库提供了一系列用于文件操作的类和函数,主要包括:
示例代码:
#include <fstream>
#include<iostream>
#include<string>
int main() {
std::ofstream outfile("example.txt"); // 创建并打开一个名为 "example.txt" 的文件
if (!outfile) {
std::cerr << "Error opening file for writing."<< std::endl;
return 1;
}
outfile << "Hello, World!"<< std::endl; // 将 "Hello, World!" 写入文件
outfile.close(); // 关闭文件
std::ifstream infile("example.txt"); // 打开同一个文件进行读取
if (!infile) {
std::cerr << "Error opening file for reading."<< std::endl;
return 1;
}
std::string line;
while (std::getline(infile, line)) {
std::cout<< line<< std::endl; // 输出文件内容
}
infile.close(); // 关闭文件
return 0;
}
iostream:这是一个输入/输出流库,提供了格式化输入/输出功能。你可以使用 cin 和 cout 分别从控制台读取输入和向控制台输出。
cstdio:这是一个 C 风格的 I/O 库,提供了如 printf, scanf, fopen, fclose 等函数。虽然这些函数在 C++ 中也可以使用,但通常建议使用 fstream 和 iostream 库,因为它们更安全,且与 C++ 的面向对象特性更兼容。
filesystem:这是一个用于文件系统操作的库,提供了如路径操作、文件复制/删除等功能。注意,这个库在 C++17 中引入,所以确保你的编译器支持 C++17 或更高版本。
示例代码:
#include<filesystem>
#include<iostream>
namespace fs = std::filesystem;
int main() {
fs::path p = fs::current_path(); // 获取当前工作目录
std::cout << "Current path: " << p << std::endl;
if (fs::exists(p / "example.txt")) { // 检查 "example.txt" 是否存在
std::cout << "example.txt exists."<< std::endl;
} else {
std::cout << "example.txt does not exist."<< std::endl;
}
return 0;
}
这些库函数可以帮助你完成各种文件操作任务。请根据需要选择合适的库和函数。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。