C语言实现的文件交互

  • 计算机与外部设备的交互依靠文件完成
文件是记录在外部介质上的数据的集合;例如1.c 是源码 1.exe可执行的文件
  • 文件的分类
按组织结构:
记录文件:有一定结构的文件,可以解析成字段值的文件;
流式文件:对于源代码一类的属于流式文件(由一个个字符,字节按顺序组成)

按存储介质:
普通文件---存储介质文件(磁盘,磁带)
设备文件---非存储介质如显示器,键盘 打印机


按组织形式:
二进制文件:数据按其在内存中的原始形态存放 如果存入123 直接换算成二进制形式
文本文件:ASCII文件每个字节存放一个字符的ASCII 码(例如在文本写入123 1对应ASCII 49 2对应50 3对应51 分别把49,50,51换算为二进制,并存入字节)

文件的出现便于信息共享,数据和程序分离,数据的改变不影响程序的改变,文件还便于保存中间结果

  • 文件的标识符
也就是文件的后缀名,什么样的文件用什么样的标识符,由操作系统决定
简化了编程的过程,操作,读写设备就是操作,读写数据的过程,是否正确输入/输出了数据,流可以屏蔽技术细节,主要用于设备文件和系统的通信,只要按照统一接口,就可以操作设备,数据搬运的过程就是流,
无须关心I/O设备
  • 文件处理
缓冲文件系统
    下载文件十分伤害磁盘,这时文件缓冲区就派上了用场,不妨下载到一定程度,一并写入磁盘,主要是提升磁盘的寿命
    1.系统开辟内存缓冲区 2.用户自己设定文件缓冲区
    比如我们可以通过重定向把文件输出到相关设备文件
非缓冲文件系统
  • 文件类型指针
void main()
{
    char words[30] = "喜欢企鹅人和谜语人\n";
    fputs(words, stdout);//stdout就是屏幕显示器
    FILE *p = stdout;
    fputs("哦~尼格码!where are you?\n",p);
    system("pause");
}

猜你喜欢

转载自www.cnblogs.com/saintdingspage/p/11968606.html