linux 下文件操作
1.创建文件
int creat(const char *filename,mode_t mode);
#filename为所操作的文件的路径名
#mode指定新建文件的存取权限,它同umask一起决定文件的最终权限
2.打开文件
int open(const char *pathname,int flags);
int open(const char *pathname,int flags,mode_t mode);
#pathname是我们要打开的文件名,包含路径名称,缺省是当前路径
#flags 可取:O_RDONLY O_WRONLY O_RDWR O_APPEND O_CREAT O_EXEC O_NOBLOCK O_TRUNC
#mode 可取:S_IRUSR S_IWUSR S_IXUSR S_IRWXU S_IRGRP S_IWGRP S_IXGRP S_IRWXG S_IROTH S_IWOTH S_IXOTH S_IRWXO S_ISUID S_ISGID
3.读文件
int read(int fd, const void *buf, size_t length);
返回值为实际读取的字节数
4.写文件
int write(int fd, const void *buf, size_t length);
返回值为实际写入的字节数
5.定位文件
int lseek(int fd, offset_t offset, int whence);
lseek()将文件读写指针相对whence移动offset个字节。操作成功时,返回
文件指针相对于文件头的位置。
#offset 可取正值,负值
#whence 可取:SEEK_SET(相对文件开头) SEEK_CUR(相对文件读写指针的当前位置) SEEK_END(相对文件末尾)
6.关闭文件
int close(int fd);
C库文件操作
1.创建和打开文件
FILE *fopen(const char *path, const char *mode);
2.读写文件
int fgetc(FILE *stream);
int fputc(int c, FILE *stream);
char *fgets(char *s, int n, FILE *stream);
int fputs(const char *s, FILE *stream);
int fprintf(FILE *stream, const char *format, ...);
int fscanf (FILE *stream, const char *format, ...);
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);
3.定位文件
int fgetpos(FILE *stream, fpos_t *pos);
int fsetpos(FILE *stream, const fpos_t *pos);
int fseek(FILE *stream, long offset, int whence);
4.关闭文件
int fclose (FILE *stream);
1.创建文件
int creat(const char *filename,mode_t mode);
#filename为所操作的文件的路径名
#mode指定新建文件的存取权限,它同umask一起决定文件的最终权限
2.打开文件
int open(const char *pathname,int flags);
int open(const char *pathname,int flags,mode_t mode);
#pathname是我们要打开的文件名,包含路径名称,缺省是当前路径
#flags 可取:O_RDONLY O_WRONLY O_RDWR O_APPEND O_CREAT O_EXEC O_NOBLOCK O_TRUNC
#mode 可取:S_IRUSR S_IWUSR S_IXUSR S_IRWXU S_IRGRP S_IWGRP S_IXGRP S_IRWXG S_IROTH S_IWOTH S_IXOTH S_IRWXO S_ISUID S_ISGID
3.读文件
int read(int fd, const void *buf, size_t length);
返回值为实际读取的字节数
4.写文件
int write(int fd, const void *buf, size_t length);
返回值为实际写入的字节数
5.定位文件
int lseek(int fd, offset_t offset, int whence);
lseek()将文件读写指针相对whence移动offset个字节。操作成功时,返回
文件指针相对于文件头的位置。
#offset 可取正值,负值
#whence 可取:SEEK_SET(相对文件开头) SEEK_CUR(相对文件读写指针的当前位置) SEEK_END(相对文件末尾)
6.关闭文件
int close(int fd);
C库文件操作
1.创建和打开文件
FILE *fopen(const char *path, const char *mode);
2.读写文件
int fgetc(FILE *stream);
int fputc(int c, FILE *stream);
char *fgets(char *s, int n, FILE *stream);
int fputs(const char *s, FILE *stream);
int fprintf(FILE *stream, const char *format, ...);
int fscanf (FILE *stream, const char *format, ...);
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);
3.定位文件
int fgetpos(FILE *stream, fpos_t *pos);
int fsetpos(FILE *stream, const fpos_t *pos);
int fseek(FILE *stream, long offset, int whence);
4.关闭文件
int fclose (FILE *stream);