在C++中,您可以使用fopen
、fread
和fwrite
等函数来进行文件的读写操作
#include<iostream>
#include <cstdio>
#include <cstring>
int main() {
// 打开一个文件用于写入
FILE* file_ptr = fopen("example.txt", "w");
if (file_ptr == nullptr) {
std::cerr << "Error opening file for writing."<< std::endl;
return 1;
}
// 写入数据到文件
const char* data = "Hello, World!";
size_t bytes_written = fwrite(data, sizeof(char), strlen(data), file_ptr);
if (bytes_written != strlen(data)) {
std::cerr << "Error writing to file."<< std::endl;
fclose(file_ptr);
return 1;
}
// 关闭文件
fclose(file_ptr);
// 打开同一个文件用于读取
file_ptr = fopen("example.txt", "r");
if (file_ptr == nullptr) {
std::cerr << "Error opening file for reading."<< std::endl;
return 1;
}
// 读取文件内容
char buffer[256];
size_t bytes_read = fread(buffer, sizeof(char), sizeof(buffer) - 1, file_ptr);
if (bytes_read == 0) {
std::cerr << "Error reading from file."<< std::endl;
fclose(file_ptr);
return 1;
}
// 确保字符串以'\0'结尾
buffer[bytes_read] = '\0';
// 输出读取到的内容
std::cout << "Read from file: "<< buffer<< std::endl;
// 关闭文件
fclose(file_ptr);
return 0;
}
这个示例首先创建(或打开)一个名为example.txt
的文件,并将字符串"Hello, World!"
写入该文件。然后,它关闭文件并重新以只读模式打开它。接着,它读取文件的内容到缓冲区buffer
,并将其输出到控制台。最后,它关闭文件。
注意:在实际编程中,请确保正确处理错误情况,例如检查指针是否为空,以及检查读/写操作是否成功。