CreateFile

createfile在Windows系统中的应用

小樊
91
2024-10-16 17:15:18
栏目: 智能运维

CreateFile是Windows API(应用程序接口)中的一个函数,用于在Windows操作系统中创建、打开、关闭或删除文件。这个函数为程序员提供了对文件进行基本操作的接口。

CreateFile函数的原型如下:

HANDLE CreateFile(
  LPCTSTR FileName,          // 文件名
  DWORD DesiredAccess,        // 访问模式
  DWORD ShareMode,            // 分享模式
  LPSECURITY_ATTRIBUTES lpSecurityAttributes, // 安全属性
  DWORD CreationDisposition, // 创建方式
  DWORD FlagsAndAttributes,   // 文件标志和属性
  HANDLE hTemplateFile       // 模板文件句柄
);

参数说明:

CreateFile函数返回一个HANDLE类型的值,表示创建或打开的文件句柄。如果函数执行成功,则返回有效的文件句柄;否则返回INVALID_HANDLE_VALUE

下面是一个简单的示例代码,演示如何使用CreateFile函数创建一个名为test.txt的新文件:

#include <windows.h>
#include <stdio.h>

int main() {
  HANDLE hFile;
  DWORD dwBytesWritten;
  const char* fileName = "test.txt";
  const char* fileContent = "Hello, World!";

  // 创建文件
  hFile = CreateFile(
    fileName,                  // 文件名
    GENERIC_WRITE,              // 访问模式(只写)
    0,                          // 分享模式(无共享)
    NULL,                       // 安全属性(默认)
    CREATE_ALWAYS,              // 创建方式(总是创建新文件)
    0,                          // 文件标志和属性(默认)
    NULL                        // 模板文件句柄(无模板文件)
  );

  if (hFile == INVALID_HANDLE_VALUE) {
    printf("Error creating file: %lu\n", GetLastError());
    return 1;
  }

  // 写入文件内容
  if (!WriteFile(hFile, fileContent, strlen(fileContent), &dwBytesWritten, NULL)) {
    printf("Error writing to file: %lu\n", GetLastError());
    CloseHandle(hFile);
    return 1;
  }

  // 关闭文件句柄
  CloseHandle(hFile);

  printf("File created successfully!\n");
  return 0;
}

在这个示例中,我们使用CreateFile函数创建一个名为test.txt的新文件,并使用WriteFile函数将字符串Hello, World!写入文件中。最后,我们关闭文件句柄以释放资源。

0
看了该问题的人还看了