运行效果展示
第一步添加头文件
#include <stdio.h>
写函数
使用的API是 FILE * __cdecl fopen(In_z const char * _Filename, In_z const char * _Mode);
//文件本地地址 //读取、操作文件的方式
模式 描述
r 打开一个已有的文本文件,允许读取文件。
w 打开一个文本文件,允许写入文件。如果文件不存在,则会创建一个新文件。在这里,您的程序会从文件的开头写入内容。如果文件存在,则该会被截断为零长度,重新写入。
a 打开一个文本文件,以追加模式写入文件。如果文件不存在,则会创建一个新文件。在这里,您的程序会在已有的文件内容中追加内容。
r+ 打开一个文本文件,允许读写文件。
w+ 打开一个文本文件,允许读写文件。如果文件已存在,则文件会被截断为零长度,如果文件不存在,则会创建一个新文件。
a+ 打开一个文本文件,允许读写文件。如果文件不存在,则会创建一个新文件。读取会从文件的开头开始,写入则只能是追加模式。
具体代码如下
int readFile(const char *fname, char *buffer, int bufferLen)
{
int retLen=0;
FILE *f;
f = fopen(fname, "r"); //r=打开一个已有的文本文件,允许读取文件。
if(f) {
retLen= fread(buffer, 1, bufferLen, f);
buffer[retLen]=0;
fclose(f);
}
if(retLen <= 0){
printf("读取文件错误,或者空文件!");
return 0;
}
return retLen;
}
完整的代码
// cs.cpp : 定义控制台应用程序的入口点。
//
#include <stdio.h>
int readFile(const char *fname, char *buffer, int bufferLen)
{
int retLen=0;
FILE *f;
f = fopen(fname, "r"); //r=打开一个已有的文本文件,允许读取文件。
if(f) {
retLen= fread(buffer, 1, bufferLen, f);
buffer[retLen]=0;
fclose(f);
}
if(retLen <= 0){
printf("读取文件错误,或者空文件!");
return 0;
}
return retLen;
}
int main()
{
char buf[255];
const char fname[]= "c:/1.txt";
int retLen= readFile(fname,buf, 255);
if(retLen != 0) {
printf("读取的数据是: %s \n",buf);
}
getchar();
return 0;
}