当前位置: 首页 > wzjs >正文

温州网站建设及推广东莞网页设计

温州网站建设及推广,东莞网页设计,app定制多少钱,wordpress文章循环不带置顶文章目录 文件操作 1.1 文件操作 1.2 文件操作的数据传输形式 1.3 文件操作的分类 1.4 文件存储格式 1.5 文件流指针 1.6 函数名:fopen() 1.7 函数名:fclose() 1.8 函数名:fprintf() 1.9 函数名:fscanf() 1.10 函数名&…

目录

文件操作

1.1 文件操作

1.2 文件操作的数据传输形式

1.3 文件操作的分类

1.4 文件存储格式

1.5 文件流指针

1.6 函数名:fopen()

1.7 函数名:fclose()

1.8 函数名:fprintf()

1.9 函数名:fscanf()

1.10 函数名:fseek()

1.11 函数名:feof()

1.12 示例

1.13 练习

1.14 函数名:fwrite()

1.15 函数名:fread()

1.16 函数名:ftell()

1.17 函数名:rewind()

1.18 函数名:fputs()

1.19 函数名:fgets()

1.20 函数名:fputc()

1.21 函数名:fgetc()

1.22 函数名:remove()


文件操作

1.1 文件操作

        1.创建、打开文件---默认情况下光标在文件开头,也可以采用追加,光标在文件末尾

        2.读写---通过光标进行定位,光标会跟随移动,写入内容只有覆盖模式

        3.关闭文件

1.2 文件操作的数据传输形式

数据的写入:从内存到硬盘

数据的读取:从硬盘到内存

1.3 文件操作的分类

基于缓冲区的文件操作---高级IO---基于低级IO实现的函数封装

基于非缓冲区的文件操作---低级IO---Linux系统编程阶段---内核函数

1.4 文件存储格式

Linux文件类型:d - p l s c b

文件后缀:文件的打开方式

文件存储格式:ASSIC码存储、二进制存储

1.5 文件流指针

FILE *fp;

文件打开成功后,fp在后续操作中就代表该文件

1.6 函数名:fopen()

 函数原型:FILE *fopen(const char *pathname, const char *mode);

函数功能:打开文件

函数参数:const char *pathname:路径/文件名的字符串

                  const char *mode:打开方式,填入常量字符串 

                  r 读 打开旧文件 

                  w 写 创建新文件 

                  a 追加 打开旧文件/创建新文件 

                  + 扩展功能

                        “r” 只读 “r+” 读写 

                        “w” 只写 “w+” 读写 

函数返回值:打开成功,返回文件流指针,打开失败,返回 NULL

函数使用:

                FILE *fp = fopen(“./1.txt”, “w+”); 

1.7 函数名:fclose()

函数原型:int fclose(FILE *stream);

函数功能:关闭文件

函数参数:FILE *stream:文件流指针

函数返回值:成功返回 0,失败返回 EOF/-1

函数使用:

        fclose(fp);

1.8 函数名:fprintf()

函数原型:int fprintf(FILE *stream, const char *format, ...);

函数功能:格式化写入

函数参数:FILE *stream:文件流指针

const char *format, ... :同 printf()

函数返回值:输出的字符个数

函数使用:

fprintf(fp, “hello\n”);

1.9 函数名:fscanf()

函数原型:int fscanf(FILE *stream, const char *format, ...);

函数功能:格式化读取

函数参数:FILE *stream:文件流指针 const char *format, ... :同 scanf()

函数返回值:返回值返回格式控制符获取到的数据个数

函数使用:

1.10 函数名:fseek()

函数原型:int fseek(FILE *stream, long offset, int whence);

函数功能:移动光标

函数参数:FILE *stream:文件流指针

long offset:偏移量 正数向后偏移 负数向前偏移

int whence:基准位置

0 文件开头 SEEK_SET

1 当前位置 SEEK_CUR

2 文件末尾 SEEK_END

函数返回值:成功返回 0,失败返回-1

函数使用:

fseek(fp,0,0);

fseek(fp,-2,2);

1.11 函数名:feof()

函数原型:int feof(FILE *stream);

函数功能:判断光标是否在文件末尾

函数参数:FILE *stream:文件流指针

函数返回值:如果在末尾是非 0,不在末尾是 0

函数使用:

while(a[i]!=0)

while(feof(fp)==0) 判断光标是否在文件末尾

{

fscanf();

}

1.12 示例

#include <stdio.h>
#include <string.h>
int main()
{char path[30] = {0};printf("输入文件名:\n");gets(path);FILE *fp = fopen(path, "w+"); if(fp == NULL){perror("fopen");return 0;}fprintf(fp, "hello\n");char a[30] = {0};scanf("%s", a);fprintf(fp, "%s\n", a);//rewind(fp);fseek(fp, -(strlen(a)+1), SEEK_CUR);char b[30] = {0};fscanf(fp, "%s\n", b);printf("%s\n", b);char c[30] = {0};fscanf(fp, "%s\n", c);printf("%s\n", c);fclose(fp);return 0;
}

1.13 练习

1. 向文件 stu.xlsx 中写入几个姓名学号

比如:

        张三 1 

        李四 2

#include <stdio.h>
int main()
{FILE *fp = fopen("./stu.xlsx", "w");if(fp == NULL){perror("fopen");return 0;}fprintf(fp, "%s\t%d\n", "张三", 1);fprintf(fp, "%s\t%d\n", "李四", 2);fclose(fp);return 0;
}

2. 从文件中把信息读取出来保存到数组中,然后打印

#include <stdio.h>
struct info{char name[20];int id;
};
struct info stu[50];
int main()
{FILE *fp = fopen("./stu.xlsx", "r");if(fp == NULL){perror("fopen");return 0;}//rewind(fp);fseek(fp, 0, 0);int i = 0;while(feof(fp) == 0){fscanf(fp, "%s\t%d\n", \stu[i].name, &stu[i].id);i++;}for(int j=0; j<i; j++){printf("%s\t%d\n", \stu[j].name, stu[j].id);}fclose(fp);return 0;
}

1.14 函数名:fwrite()

函数原型:size_t fwrite(const void *ptr, size_t size, size_t nmemb,FILE *stream);

函数功能:块写

函数参数:const void *ptr:数据块的起始地址

size_t size:数据块大小

size_t nmemb:数据块数量

FILE *stream:文件流指针

函数返回值:返回写入的块数量

函数使用:

#include <stdio.h>
int main()
{FILE *fp =fopen("9.txt","w+");if(fp == NULL){perror("fopen");return 0;}int a[5]={1,2,3,4,5};fwrite(a,10,2,fp);fclose(fp);return 0;
}

1.15 函数名:fread()

函数原型:size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

函数功能:块读

函数参数:const void *ptr:数据块的起始地址

size_t size:数据块大小

size_t nmemb:数据块数量

FILE *stream:文件流指针

函数返回值:返回读取的块数量

函数使用:

#include <stdio.h>
int main()
{FILE *fp =fopen("9.txt","r+");if(fp == NULL){perror("fopen");return 0;}fseek(fp,4,SEEK_SET);int a[5]={0};fread(a,2,10,fp);for(int i=0;i<5;i++){printf("%d\n",a[i]);}fclose(fp);return 0;
}

1.16 函数名:ftell()

函数原型:long ftell(FILE *stream);

函数功能:用于定位光标当前所在位置

函数参数:FILE *stream:文件流指针

函数返回值:返回光标当前所在位置(距离文件开头的字节数)

函数使用:

ftell(fp);

1.17 函数名:rewind()

函数原型:void rewind(FILE *stream);

函数功能:把光标移动到文件开头

函数参数:FILE *stream:文件流指针

函数返回值:无

函数使用:

rewind(fp); == fseek(fp,0,0);

1.18 函数名:fputs()

函数原型:int fputs(const char *s, FILE *stream);

函数功能:向文件写入一个字符串

函数参数:const char *s:字符串首地址

FILE *stream:文件流指针

函数返回值:字符串的字符个数

函数使用:

1.19 函数名:fgets()

函数原型:char *fgets(char *s, int size, FILE *stream);

函数功能:从文件读取 size-1 个字符,字符串形式

函数参数:char *s:字符串保存的位置

int size:读取的字符个数(因为是获取字符串,所以会消耗一个空间保存’\0’)

FILE *stream:文件流指针

函数返回值:成功返回 s 的值

函数使用:

#include <stdio.h>
int main()
{FILE *fp =fopen("10.txt","w+");if(fp == NULL){perror("fopen");return 0;}
char a[10]="hello";fputs(a,fp);char buff[10]={0};rewind(fp);fgets(buff,6,fp);puts(buff);char b[30]={0};fgets(b,30,stdin);fputs(b,stdout);fclose(fp);return 0;
}

1.20 函数名:fputc()

函数原型:int fputc(int c, FILE *stream);

1.21 函数名:fgetc()

函数原型:int fgetc(FILE *stream);

1.22 函数名:remove()

函数原型:int remove(const char *pathname);

函数功能:删除文件


文章转载自:

http://IvHT3gTF.pgfkL.cn
http://9leQo59x.pgfkL.cn
http://Jz4UGS2L.pgfkL.cn
http://ZVoBAEsN.pgfkL.cn
http://51XXmXgq.pgfkL.cn
http://mv7nfHEF.pgfkL.cn
http://wWqTCDBC.pgfkL.cn
http://rWNU8cyy.pgfkL.cn
http://O681pTNi.pgfkL.cn
http://sJFTyuNT.pgfkL.cn
http://7lc98GtX.pgfkL.cn
http://IFMppr2d.pgfkL.cn
http://rskN4JLl.pgfkL.cn
http://2Gls3iaP.pgfkL.cn
http://46V6qvf9.pgfkL.cn
http://AA5r1BuJ.pgfkL.cn
http://HfPOxslG.pgfkL.cn
http://qqSwA3y2.pgfkL.cn
http://xu0AcEvS.pgfkL.cn
http://kePMjAeO.pgfkL.cn
http://fydilsim.pgfkL.cn
http://WwvvU4ax.pgfkL.cn
http://8FsX8RO1.pgfkL.cn
http://pTOSdEpl.pgfkL.cn
http://xNMq0TuF.pgfkL.cn
http://LKZr54q4.pgfkL.cn
http://BgvZHuSW.pgfkL.cn
http://gVxOC3y2.pgfkL.cn
http://bUqHFvza.pgfkL.cn
http://JdvncNbI.pgfkL.cn
http://www.dtcms.com/wzjs/767862.html

相关文章:

  • 南阳网站公司介绍简历模板
  • 百度关键词规划师入口福州关键词优化平台
  • 做视频网站视频文件都存放在哪里wordpress 仿小米
  • 如何做论坛网站建设淘宝网站
  • 网站建设优化公司排名公司部门结构图
  • 优动网站网站建设总结材料
  • 怎么邀约客户做网站亚马逊是做什么的
  • 企业网站营销优缺点福田网站建设费用
  • 营销型网站设计房地产做游戏网站用什么软件
  • 学什么可以做推广网站h5可以做网站么
  • 网站谷歌地图提交wordpress wp terms
  • 建设部建筑招投标网站视频直播app下载
  • 青岛网站排名公司百度广告代运营
  • 济南正规网站建设公司想做网站怎么做
  • 罗湖网站建设58保险公司销售好做吗
  • 深圳公司网站设计哪家好注册域名网站
  • 做设备出口网站微信的企业网站模板
  • 南宁网站建设找哪家好网络广告推广员
  • 成都手机网站建设哪家公司好公司做网站要三千多吗
  • 随州网站建设学习营销策略ppt
  • 精湛的网站建设国内重大新闻事件2024
  • iis 网站目录权限手机网页视频如何下载
  • 学室内设计网站网站建设合同细节
  • 关于校园网站的策划书免费问题咨询
  • 二手书市场网站建设项目规划表合肥本地建网站
  • 石狮服装城商家微网站建设济宁创企网络技术有限公司
  • 网站的关键词怎么选择网站更换主机需要怎么做
  • 怎么做网站凡科毕业设计做网站题目
  • 中小企业网站制作哪家好wordpress 印象码
  • 爱奇艺的网站是用什么做的wordpress 企业主体