函數CreateFile、ReadFile和WriteFile是Windows平臺的API函數,用于創建文件、讀取文件和寫入文件。下面是使用這些函數的示例代碼:
#include <Windows.h>
int main() {
HANDLE hFile = CreateFile("test.txt", GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE) {
// 文件創建失敗
return GetLastError();
}
// 文件創建成功
CloseHandle(hFile);
return 0;
}
上述代碼創建了一個名為test.txt的文件。
#include <Windows.h>
int main() {
HANDLE hFile = CreateFile("test.txt", GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE) {
// 文件打開失敗
return GetLastError();
}
char buffer[100];
DWORD bytesRead;
if (ReadFile(hFile, buffer, sizeof(buffer), &bytesRead, NULL)) {
// 讀取文件成功
buffer[bytesRead] = '\0'; // 添加字符串結尾標志
printf("%s", buffer);
} else {
// 讀取文件失敗
printf("ReadFile failed with error %d\n", GetLastError());
}
CloseHandle(hFile);
return 0;
}
上述代碼打開了名為test.txt的文件,并將文件內容讀取到一個緩沖區中。
#include <Windows.h>
int main() {
HANDLE hFile = CreateFile("test.txt", GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE) {
// 文件打開失敗
return GetLastError();
}
char buffer[] = "Hello, World!";
DWORD bytesWritten;
if (WriteFile(hFile, buffer, sizeof(buffer) - 1, &bytesWritten, NULL)) {
// 寫入文件成功
printf("WriteFile wrote %d bytes\n", bytesWritten);
} else {
// 寫入文件失敗
printf("WriteFile failed with error %d\n", GetLastError());
}
CloseHandle(hFile);
return 0;
}
上述代碼打開了名為test.txt的文件,并將字符串"Hello, World!"寫入文件中。
請注意,在使用這些函數之前,需要包含Windows.h頭文件,并鏈接Windows庫。此外,還需要處理錯誤情況,以確保函數調用成功。