unix文件操作函数

1. fopen函数


1 #include <stdio.h>
2 FILE *fopen(const char *path, const char *mode)

返回:文件顺利打开后,指向该流的文件就会被返回。如何文件打开失败则返回NULL,并把错误代码存在 errno 中。

参数说明:

  mode: 1)r        以只读方式打开文件,该文件必须存在。

        2) r+     以可读写方式打开文件,该文件必须存在。

        3) rb+   以读写打开一个二进制文件,允许读写数据,文件必须存在。

        4) rw+  打开一个文本文件,允许读和写。

5) w     打开只写文件,若文件存在则文件长度清为0,即该文件内容消失,若文件不存在则创建该文件。

        6) w+  
打开可读写文件,若文件存在则文件长度清为0,即文件文件内容会消失。若文件不存在则创建文件文件。

      7) a    
以附加的方式打开只写文件,若文件不存在,则会创建文件文件,如果文件存在,则写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)

      8) a+   以附加的方式打开可读写文件。若文件不存在,则会创建该文件,如果文件存在,则写入的数据
会被添加到文件尾,即文件碑的内容会被保留。(原来的EOF符不保留)

9) wb   只写打开或新建 一个二进制文件。只允许写数据。

10)wb+ 读写打开或新建一个二进制文件;只允许写数据。

11)ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。

12)at+   打开一个文件文件

总结:a--append,添加新内容到文件尾,删除原文件的EOF。

t--打开的文件的类型是文本文件,

+--表示对文件既可以读也可以写。

fopen建立的新文件会具有 S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH |
S_IWOTH(0666)权限。

二进制文件和文本文件的区别:

1. 
在windows系统中,文本模式下,文件以“\r\n”代表换行,若以文件模式打开文件,并用fputs等函数写入换行符“\n”时,函数会自动在“\n”前面加上"\r"。即实际写入文件的是“\r\n”.

2. 
在类UNIX/LINIX系统中文本模式下,文件以“\n”代表换行。所以unix在文本模式和二进制模式下并无区别。

注意:在文件操作时

  1)在定义文件指针时,要将文件指针指向空;如FILE *fp = NULL;

  2)文件操作完成后,需要将文件关闭,一定要注意,否则会造成文件所占用的内存泄漏和在下次访问时出现问题。

  3)文件关闭后,需要将文件指针指向空。这样做会防止出现游离指针,而对整个工程造成不必要的麻烦;如:fp = NULL;


1 #include <stdio.h>
2 int fclose(FILE *steream)
3 关闭一个流。
4 注意:使用fclose()函数就可以把缓冲区内最后剩余的数据输出到磁盘文件中,并释放文件指针和有关的缓冲区。

unix文件操作函数

时间: 2024-10-12 21:20:47

unix文件操作函数的相关文章

LINUX/UNIX的文件操作函数

本文用于记录在LINUX编程中,常用的文件操作函数,包括系统调用和库函数,以备查阅. 针对输入输出操作,直接使用底层系统调用的一个问题是它们的效率十分低,原因在于: 1.使用系统调用会影响系统的性能,与函数调用相比,系统调用的开销要大些,因为在执行系统调用时,Linux必须从运行用户代码切换到执行内核代码,然后再返回用户代码. 2.硬件会限制对底层系统调用一次所能读写的数据块大小.比如,磁带机通常一次能写的数据块长度是10K,所以若你试图写的数据量不是10K的整数倍,磁带机还是以10K为单位卷绕

Unix文件操作

一.概述 Unix文件操作常用函数包括open.close.creat.lseek.dup.dup2.fcntl等, 其中open.creat. fcntl函数需要包含头文件<fcntl.h>, 其余几个函数需要包含头文件<unistd.h>. 由于在Linux操作系统 中使用man命令可以非常方便的查找函数原型及示例,这里就不帖出函数原型了,只讲一下使用时需要注意的地方. 二.文件描述符 每一个在程序中打开的文件都有一个相应的文件描述符(file descriptor),Unix

C语言文件操作函数的编写

 编写文件操作的头文件 /************************************************************************** Copyright(C)    :2014-08-5 toto Filename       :file.h Author          :涂作权 Version         :V1.1 Date            :2014-08-05 Description     :文件操作的头文件 Others  

总结文件操作函数(二)-C语言

格式化读写: #include <stdio.h> int printf(const char *format, ...);                   //相当于fprintf(stdout,format,-); int scanf(const char *format, -); int fprintf(FILE *stream, const char *format, ...);      //中间的参数为写入文件的格式 int fscanf(FILE *stream, const

c语言文件操作函数

c语言文件操作函数大全 fopen(打开文件) 相关函数 open,fclose 表头文件 #include<stdio.h> 定义函数 FILE * fopen(const char * path,const char * mode); 函数说明 参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代表着流形态. mode有下列几种形态字符串: r 打开只读文件,该文件必须存在. r+ 打开可读写的文件,该文件必须存在. w 打开只写文件,若文件存在则文件长度清为0,即该文件

C语言样式的文件操作函数

使用C语言样式的文件操作函数,需要包含stdio.h头文件. 1.打开文件的函数: 1 //oflag的取值为“w”或“r”,分别表示以写或读的方式打开 2 FILE* fd = fopen(filename.c_str(), oflag); 2.写文件的函数原型: size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream ); 其中buffer是需要向文件中写入的内容在内存中的首地址指针,size是待写入

PHP5.4 文件操作函数 之 图片计数器的实例

1.访问文件或者文件夹相关函数 <?php echo filetype('c:\windows').'<br>'; ?> <?php echo filetype('c:\windows\regedit.exe').'<br>'; ?> <?php $arr=scandir("c:\\"); var_dump($arr); ?> <?php $arr=scandir("c:\\"); foreach($

PHP部分文件操作函数

1 (1)  fopen 打开文件函数  (R-只读 W-写入 A-读写) fopen (路径和文件名,打开方式) 2  fread 读取文件内容 (字节为单位) 3 (3)  filesize 读取文件大小,字节为计量单位 filesize (路径和文件名) 4 (4)  fwrite 写入文件内容 fwrite (路径和文件名,写入的内容) (5)  fclose 关闭打开的文件 fclose (路径和文件名) PHP部分文件操作函数,布布扣,bubuko.com

文件操作函数及文件流详解

这几天着重研究了一下文件操作函数的原理及实现,在这里与大家分享一下----开心 1.文件流 2.几种文件操作函数 (1)  fopen (2) fclose (3)fread (4)fwrite (5)fgets (6)fputs 先来看FILE结构体: #ifndef _FILE_DEFINED struct _iobuf { char *_ptr;//文件缓存的当前位置 int _cnt;//缓存里可以读取的字节数 char *_base;//文件缓存的起始位置 int _flag; int