在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
,并將其輸出到控制臺。最后,它關閉文件。
注意:在實際編程中,請確保正確處理錯誤情況,例如檢查指針是否為空,以及檢查讀/寫操作是否成功。