_int64_在Linux对应对文件,LInux 编程基础学习笔记 持续ing 文件读写
一。文件讀寫
1.創建文件:
頭文件: ? ? ? ?
函數:creat(char *path,int mode) ?mode:S_I(R|W|X)(USR|GRP|OTH) ? 對不同用戶組的不同讀寫執行
2.打開文件:
文件頭: ? ? ? ?
函數:open(char *path,int oflag,mode) oflag:O_RDONLY,O_WRONLY,O_RDWR, O_APPEND,O_CREATE,O_EXCL,O_RUNC
3.都取文件:
文件頭:
函數:read(int fhand,void *buffer,read_size); 文件句柄,讀取文件內容緩沖區,都取大小 PS:從光標處都取,使用lseek 移動光標
4. 寫入文件:
文件頭:
函數:write(int hand,void *buffer,write_size) ;同read
5.移動光標:
頭文件:
函數:lseek(intfd,offset,whence) ;文件句柄,偏移量,從哪開始: whence預設:文件頭:SEEK_SET(開頭) SEEK_END(結尾) SEEK_CUR(當前)
6.關閉文件:
文件頭:
函數:close(句柄) ;
7.修改文件所有人:
chown(path,uid,gid)
fchown(句柄,uid,gid)
lchown(path,uid,gid)
chown修改路徑指定的文件所有人,fchown修改打開的文件的所有人,lchown修改鏈接的所有人。以上函數運行時需要有相關的權限否則失敗返回-1?root用戶是0,0
8.設置文件權限:
chmod(path,mode)
fchmod(句柄,mode)
mode:S_I(R|W|X)(USR|GRP|OTH) ? 對不同用戶組的不同讀寫執行
權限蔽屏:umask(mode) 同linux命令行 umask
9獲取文件狀態:
stat(path,struct stat*buff)
fstat(句柄,struct stat* buff)
lstat(path,struct stat* buff)
stat結構體:
struct stat {
mode_t st_mode; //文件對應的模式,文件,目錄等
ino_t st_ino; //i-node節點號
dev_t st_dev; //設備號碼
dev_t st_rdev; //特殊設備號碼
nlink_t st_nlink; //文件的連接數
uid_t st_uid; //文件所有者
gid_t st_gid; //文件所有者對應的組
off_t st_size; //普通文件,對應的文件字節數
time_t st_atime; //文件最后被訪問的時間
time_t st_mtime; //文件內容最后被修改的時間
time_t st_ctime; //文件狀態(屬性)改變時間
blksize_t st_blksize; //文件內容對應的塊大小
blkcnt_t st_blocks; //文件內容對應的塊數量
};
10.創建目錄:
函數:mkdir(path,mode) mode同文件創建的mode
11.刪除目錄:
函數:rmdir(path);
12.修改文件日期:
函數:utime(path,struct utimbuf);struct utimbuf
13.對目錄的操作:
函數:opendir readdir closedir
總結
以上是生活随笔為你收集整理的_int64_在Linux对应对文件,LInux 编程基础学习笔记 持续ing 文件读写的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux NR==变量,LINUX中详
- 下一篇: linux进程中对信号的屏蔽,linux