“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标准库函数。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c语言程序设计文件操作方法示例(CreateFile和fopen) - Python技术站