117.info
人生若只如初见

C++函数CreateFileReadFileWriteFile怎么使用

函数CreateFile、ReadFile和WriteFile是Windows平台的API函数,用于创建文件、读取文件和写入文件。下面是使用这些函数的示例代码:

  1. 创建文件(CreateFile):
#include 
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的文件。

  1. 读取文件(ReadFile):
#include 
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的文件,并将文件内容读取到一个缓冲区中。

  1. 写入文件(WriteFile):
#include 
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库。此外,还需要处理错误情况,以确保函数调用成功。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe326AzsLBgJeBlI.html

推荐文章

  • c# winform组件 怎样集成

    在C# WinForms应用程序中集成组件通常涉及以下几个步骤: 添加引用: 首先,确保你已经安装了所需的组件。例如,如果你想要集成一个第三方库,你需要将该库的DLL...

  • c# winform组件 怎样提高效率

    要提高C# WinForms应用程序的效率,可以从多个方面入手,包括优化绘图过程、使用异步操作、合理设置控件属性等。以下是一些具体的优化策略:
    优化绘图过程 ...

  • c# winform组件 怎样自定义

    在C#中,要自定义WinForms组件,您需要创建一个继承自现有控件的新类,并重写其构造函数、事件处理程序和其他相关方法。以下是一个简单的示例,说明如何创建一个...

  • c# winform组件 怎样选择合适

    在C# WinForms应用程序开发中,选择合适的组件对于构建高效、用户友好的界面至关重要。以下是一些选择合适组件的建议:
    控件选择 根据需求选择:选择控件时...

  • Springmvc ModelAndView原理及用法是什么

    Spring MVC 是一个基于Java的实现了MVC设计模式的Web框架,它使用了ModelAndView对象来封装视图和模型数据。
    原理: 当控制器方法处理完请求后,它会返回一...

  • android简单页面跳转怎么设置

    在Android中实现页面跳转需要使用Intent来进行页面之间的跳转。以下是一个简单的页面跳转示例: 首先,在AndroidManifest.xml文件中注册要跳转的Activity,例如:...

  • android怎么实现点击图片切换图片

    在 Android 中,可以通过给 ImageView 添加点击事件来实现点击图片切换图片的功能。下面是一个示例代码: 在 XML 布局文件中定义一个 ImageView: 在 Java 代码中...

  • c语言怎么清屏指定内容

    在C语言中,可以使用特定的方法清除屏幕上的内容。下面是一种常用的方法:
    #include #include void clearScreen() {
    system("cls"); // 清屏命令在不同...