设为首页 加入收藏

TOP

C语言文件操作函数的编写(四)
2015-01-22 20:57:04 来源: 作者: 【 】 浏览:65
Tags:语言 文件 操作 函数 编写
char *pOriginalFile, const char* pwdString);

#endif

2.文件操作的实现函数

#define _CRT_SECURE_NO_WARNINGS

#include "file.h"

char **pp = NULL; //存储指针数组的地址

int flag = 0;

/*************************************************************

Function :getFileRow

Description :获得文件的中记录的行数

Calls :被本函数调用的函数清单

CalledBy :调用本函数的函数清单

TableAccessed :被访问的表(此项仅对于牵扯到数据库操作的程序)

TableUpdated :被修改的表(此项对于牵扯到数据库操作的程序)

path :表示的是文件的路径

Output :输出的信息为空

Return :返回文件中的行数

Others :其它说明

*************************************************************/

int getFileRow(const char *path)

{

FILE *pf;

pf = fopen(path, "r");

if (pf == NULL)

{

//代表获取失败

fclose(pf);

return -1;

}

else

{

int i = 0;

//是否到文件末尾,如果到了返回1,没有到的时候返回0

while (!feof(pf))

{

char str[275];

//读取一行

fgetc(str, 275, pf);

i++;

}

fclose(pf);

return i;

}

}

/*************************************************************

Function :main_view

Description :查看菜单信息

Calls :被本函数调用的函数清单

CalledBy :调用本函数的函数清单

TableAccessed :被访问的表(此项仅对于牵扯到数据库操作的程序)

TableUpdated :被修改的表(此项对于牵扯到数据库操作的程序)

Output :输出的信息为空

Return :返回值为void

Others :其它说明

*************************************************************/

void main_view()

{

system("cls");

printf("\n******************当当用户信息查询系统*******************\n");

printf("\t1.载入数据至内存(-l)\n");

printf("\t2.查找字符串(-s)\n");

printf("\t3.释放内存(-f)\n");

printf("\n*************************0.退出**************************\n");

}

/*************************************************************

Function :getFileSize

Description :获得文件的大小(字节数)

Calls :被本函数调用的函数清单

CalledBy :调用本函数的函数清单

TableAccessed :被访问的表(此项仅对于牵扯到数据库操作的程序)

TableUpdated :被修改的表(此项对于牵扯到数据库操作的程序)

path :表示的文件路径

Output :输出的信息为空

Return :文件的字节大小

Others :其它说明

*************************************************************/

int getFileSize(const char *path)

{

//定义一个文件指针

FILE *pf = NULL;

pf = fopen(path, "r");

if (pf == NULL)

{

//代表获取文件失败

fclose(pf);

return -1;

}

else

{

//fseek():Moves thefile pointer to a specified location.

fseek(pf, 0, SEEK_END);

//ftell( FILE*stream ):文件开头到当前位置有多少个字节

int num = ftell(pf);

//关闭文件

fclose(pf);

return num;

}

}

/*************************************************************

Function :loadFile

Description :加载文件

Calls :被本函数调用的函数清单

CalledBy :调用本函数的函数清单

TableAccessed :被访问的表(此项仅对于牵扯到数据库操作的程序)

TableUpdated :被修改的表(此项对于牵扯到数据库操作的程序)

path :表示的是文件路径

rowSize :表示的是文件中信息由多少行

Output :输出的信息为空

Return :返回值为int,如果加载成功返回1,如果加载失败返回0

Others :其它说明

*************************************************************/

int loadFile(const char *fPath, const int rowSize)

{

printf("加载文件后,请稍后....");

FILE *pf;

pp = (char **)malloc(sizeof(char *)* rowSize);

pf = fopen(fPath, "r");

if (pf == NULL)

{

printf("对不起,加载文件失败!");

fclose(pf);

return 0;

}

else

{

int i;

for (i = 0; i < rowSize;i++)

{

//读取字符串的缓冲区

char str[275] = { 0 };

//*fgets(char*string,int n,FILE *stream);

//从文件中逐行读取字符串

fgets(str,sizeof(str) ,pf);

//获取要分配的字符串长度,最后加一是因为'\0'

int strlength = strlen(str) + 1;

//分配内存

char *px = (char *)malloc(sizeof(char) * strlength);

//拷贝字符串

strcpy(px, str);

//设定最后一个字符串'\0'

px[strlength - 1] = '\0';

//存储字符串的首地址到指针数组

pp[i] = px;

}

}

return 1;

}

/*************************************************************

Function :findStringByKeyword

Description :通过关键字的方式进行查找

Calls :被本函数调用的函数清单

CalledBy :调用本函数的函数清单

TableAccessed :被访问的表(此项仅对于牵扯到数据库操作的程序)

TableUpdated :被修改的表(此项对于牵扯到数据库操作的程序)

keyword :通过关键字查找信息

rowSize :表示的是文件中信息由多少行

Output :输出的信息为空

Return :如果查找失败返回

首页 上一页 1 2 3 4 5 6 下一页 尾页 4/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C语言笔记1--类型、运算符与表达式 下一篇我理解的objective-C内存管理

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: