Linux文件操作的一些基本知识(1)

        Linux下一切皆文件,文件大致可分为两类:标准文件和普通文件。标准文件指的是标准输出文件(主要指显示器)和标准输入文件(主要指键盘);普通文件指的是磁盘文件。

标准设备文件中的标准输入文件的文件指针是 stdin,文件号是0;

     标准输出文件的文件指针是stdout,文件号是1;

     标准错误文件的文件指针是stderr,文件号是2;

      所以在正常情况下文件号0,1,2用户是不能用的,用户能用的文件号是从3开始的。若是在特殊情况下需要用到0,1,2,则需要进行宏定义:

0:STDIN_FILENO

1:  STDOUT_FILENO

2   STDERR_FILENO

下面介绍几个常用文件操作函数(标准文件函数):

A:打开文件  fopen

定义:  FILE  *fopen(“文件名或文件路径”,“文件的打开方式”);

可以将其打开的结果赋给一个指针,将其结果返回,以了解文件的打开情况。若打开失败则返回值是NULL,若打开成功则返回值一般是大于3。

例如:

                



若成功输出结果是:

       



如果在fopen命令中输入的文件不存在的话fopen就会返回NULL,打开文件失败,且会出现 “段错误” 的提示。


例如:


         



    文件夹里,没有c2.txt  的文件:


      




输出结果是:



                


其中打开文本文件方式主要有6种:

(1)“r”         以只读方式打开已经存在的文件(必须为已经存在的文件,否则会出错);

(2)“w”       以只写方式打开文件,若文件不存在则自动创建新文件,若文件已存在则覆盖原文件里的内容;

(3)“a”       以只写追加方式打开文件,若文件不存在则自动创建新文件,若文件已存在则在原文件结尾追加内容;

(4)“r+”       以读写方式打开已经存在的文件(必须为已经存在的文件,否则会出错);

(5)“w+”     以读写方式打开文件,若文件不存在则自动创建新文件,若文件已存在则覆盖原文件里的内容;

(6)“a+”      以读写追加方式打开文件,若文件不存在则自动创建新文件,若文件已存在则在原文件结尾追加内容;

    ****若要打开二进制文件可以在打开文本文件方式的命令基础上加b,  例如“rb”  “rb+”  “ab"   “ab+”。意义和打开文本文件相同。

例如:


        




输入结果是:


           





B.文件关闭:    fclose

定义:int     fclose(FILE *fp);

当关闭成功时返回值是0;失败为非0;



总结:fopen 命令其实是将磁盘文件里的指定文件放到输入缓冲区,以待系统进行处理;

      而fclose命令则是将处理后的内容从输出缓区放到磁盘文件里存储起来。   







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值