c语言程序设计文件操作方法示例
“C语言程序设计文件操作方法示例(CreateFile和fopen)”是关于如何在C语言中使用CreateFile和fopen函数进行文件操作的攻略。下面将分别介绍CreateFile和fopen函数的使用方法,并提供两个示例说明。
CreateFile函数的使用方法
CreateFile函数是Windows操作系统中的一个API函数,用于创建或打开文件。其函数原型为:
HANDLE CreateFileA( LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile);其中,参数的含义如下:
- lpFileName:要创建的文件名。
- dwDesiredAccess:请求访问的方式,如读取、写入、读取和写入等。
- dwShareMode:共享模式,如允许其他进程打开文件或允许读取、写入等。
- lpSecurityAttributes:Security结构指针。
- dwCreationDisposition:创建方式,如新建一个文件、打开一个已有文件等。
- dwFlagsAndAttributes:文件属性,如隐蔽、设备属性等。
- hTemplateFile:用于设置文件的属性。
下面是CreateFile函数的示例代码:
#include <windows.h>#include <stdio.h>int main(){ HANDLE hFile = INVALID_HANDLE_VALUE; DWORD dwBytesRead; DWORD dwBytesWritten; CHAR szText[] = "This is a test file."; hFile = CreateFile("test.txt", GENERIC_ALL, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); if (hFile == INVALID_HANDLE_VALUE){ printf("CreateFile failed (%d)\n", GetLastError()); return 1; } if (!WriteFile(hFile, szText, sizeof(szText), &dwBytesWritten, NULL)){ printf("WriteFile failed (%d)\n", GetLastError()); CloseHandle(hFile); return 1; } printf("%d bytes written to file\n", dwBytesWritten); CloseHandle(hFile); return 0;}这个示例创建了一个名为test.txt的文件,并将一个字符串写入其中。如果文件不存在,则会创建一个新的文件;如果文件存在,则会先清空文件内容,再对其写入。
fopen函数的使用方法
fopen函数是C标准库中的一个函数,用于打开文件。其函数原型为:
FILE *fopen(const char *filename, const char *mode);其中,filename是要打开的文件的文件名,mode可以是以下几种:
- "r":只读方式打开文件,文件必须存在。
- "w":写入方式打开文件,如果文件存在,则清空文件内容,如果文件不存在,则创建一个新文件。
- "a":追加方式打开文件,在文件末尾添加内容,如果文件不存在,则创建一个新文件。
- "r+":读写方式打开文件,文件必须存在。
- "w+":读写方式打开文件,如果文件存在,则清空文件内容,如果文件不存在,则创建一个新文件。
- "a+":读写方式打开文件,在文件末尾添加内容,如果文件不存在,则创建一个新文件。
下面是fopen函数的示例代码:
#include <stdio.h>int main(){ FILE *fp; char ch = 'A'; fp = fopen("test.txt", "w"); if(fp == NULL){ printf("File open error."); return 1; } while(ch <= 'Z'){ fputc(ch, fp); ch++; } fclose(fp); return 0;}这个示例打开一个名为test.txt的文件,并将从A到Z的26个字母写入其中。如果文件存在,则清空文件内容,如果文件不存在,则创建一个新文件。
综上所述,CreateFile函数和fopen函数都是进行文件操作的常用函数,具体使用方法可以根据需要选择。其中,CreateFile函数是Windows操作系统中的API函数,而fopen函数是C标准库函数。