Linux系统调用、C语言库函数。
前者依赖于Linux系统,后者与操作系统是独立的,在任何操作系统下,使用C语言库函数操作文件的方法都是相同的。
系统调用:
int creat(const char *filename, mode_t mode);
int open(const char *pathname,int flags, mode_t mode);
int close(int fd);
int read(int fd, const void *buf, size_t length)
int write(int fd, const void *buf, size_t length)
offset_t lseek(int fd, offset_t offset, int whence)
int access(const char*pathname,int mode)
库函数:
FILE *fopen(const char *filename, const char *mode);
常见打开模式:
r, rb 只读方式打开
w, wb 只写方式打开,如果文件不存在,则创建该文件
a, ab 追加方式打开,如果文件不存 在,则创建该文件
r+, r+b, rb+ 读写方式打开
w+, w+b, wh+ 读写方式打开,如果文件不存在,则创建该文件
a+, a+b, ab+ 读和追加方式打开。如果文件不存在,则创建该文件
例如:fopen(argv[1],"rb")
size_t fread(void *ptr, size_t size, size_t n, FILE *stream)
size_t fwrite (const void *ptr, size_t size, size_t n, FILE *stream)
int fgetc(FILE *stream) //从指定的文件中读一个字符
int fputc(int c, FILE *stream) //向指定的文件中写入一个字符
fscanf(FILE *stream, char *format[,argument...]) //从一个流中进行格式化输入
int fprintf(FILE *stream, char* format[,argument,...])// 格式化输出到一个流中
int fseek(FILE *stream, long offset, int whence)
whence:
SEEK_SET 从文件的开始处开始搜索
SEEK_CUR 从当前位置开始搜索
SEEK_END 从文件的结束处开始搜索
int fclose(FILE *fp);
long ftell(FILE *stream);//返回当前所在位置
char *getcwd(char*buffer,size_t size) //当前路径获取
int mkdir(char * dir, int mode) //创建新目录