1,文件:常規文件--,目錄-d,字符設備-c,塊設備-b,有名管道-p,套接字-s,符號鏈接-c
標準輸入-0,標準輸出-1,標準出錯-2,
2,linux '\n'換行
mac '\r'回車
win '\r\n'換行回車
3,標準io-c庫:有緩存,可以fflush刷新緩存
文件io :沒有緩存
4,標準io(庫調用)
FILE*(文件對象,stdin-0, stderr-2, stdout-1)
文件打開:fopen(const char *path, const char *mode); mode:w r a
文件關閉:fclose(FILE *stream);
文件讀寫:fgetc();/fputc();
文件流讀:char *fgets(char *s, int size, FILE *stream);
文件流寫:int fputs(const char *s, FILE *stream);
5,文件io(系統調用),文件描述符,非負整數,(0-輸入,1-輸出,2-出錯)
文件打開:open(const char *pathname, int flags, mode_t mode); mode:只在創建時有效,O_RDONLY
文件關閉:close();文件讀取:ssize_t read(int fd, void *buf, size_t count);
文件寫入:ssize_t write(int fd, const void *buf, size_t count);
文件定位:Iseek(int fd, off_t offset, int whence);
6,目錄文件操作:
打開文件目錄 :DIR* opendir (const char * path );
讀取目錄下文件:struct dirent* readdir(DIR* dir_handle);
查看文件信息:
int lstat(const char *path, struct stat *buf);//可以打開鏈接文件
int stat(const char *path, struct stat *buf);
以上一般,readdir文件列表,lstat讀取列表中的信息,配合使用