关于文件函数的简单使用,以及如何创建一个简单的vi编辑器

读文件:

      #include <stdio.h>

      Int fgetc(FILE *stream);

功能:从stream指定文件中读取一个字符

参数:

      Stream:文件指针

//将一个字符从文件中读出

char ch = fgetc(fp);

printf("%c\n", ch);

//文件的指针没有发生改变

//而是文件的光标发生率为改变

//从而输出下一个字符

char ch = fgetc(fp);

printf("%c\n", ch);

关于读取整个文件内容:

//读取文件结尾  结束标志  EOF -1

char ch

while ((ch = fgetc(fp)) != EOF)

{

printf("%c\n", ch);

}

按照行读写文件 fgetsfputs

  1. 写文件:

#include <stdio.h>

Int fputs(const char *str,FILE *stream);

功能:将str指定的字符串写入到stream指定的文件中,字符串结束符’\0’不写入文件

参数:

     Str:字符串

     Stream:文件指针

  1. 读文件:

#include <stdio.h>

Char *fgets(char *str,int size,FILE *stream);

功能:从stream指定的文件内读入字符,保存到str指定的内存空间,直到出现换行字符,读到文件结尾或是以读了size -1个字符位置,最后会自动加上字符’\0’作为字符串结束

参数:

Str:字符串

Size:指定最大读取字符串的程度(size-1

Stream:文件指针

关于vi编辑器://编号是按照顺序排列,不必在意数字

  1. 指定一个文件

Char filename[256];

Printf(“请输入一个文件名:\n”);

Scanf(“%s”,filename);

注意:用来接受换行操作

getchar();

  1. 打开文件

FILE *fp=fopen(filename,”w”);

  1. 判断文件可用性

If(!fp)

Return -1;

  1. 循环录入内容

Char buf[1024];

While(1)

{

  Memset(buf,0,1024);

Fgets(buf,1024,stdin);

  1. //退出命令

//comm=exit

If(!strcmp(“comm=exit”,buf,9))

{

   Break;

}

}

  1. 将字符串写入文件中

Int i=0;

While(buf[i])

{

Fputc(buf[i++],fp);

}

  1. 关闭文件

Fclose(fp);

 

猜你喜欢

转载自www.cnblogs.com/mingstatebird/p/12208942.html
今日推荐