c语言文件io删除特定字符,C语言文件IO操作的一些其它函数

这篇博客介绍了C语言中用于文件信息获取的stat、fstat和lstat函数,以及如何使用dup和dup2进行标准输出重定向。stat函数用于获取文件的基本信息,如文件大小;fstat则针对已打开的文件描述符获取信息;lstat尤其适用于处理符号链接。同时,示例代码展示了如何利用dup和dup2将标准输出重定向到指定文件。
摘要由CSDN通过智能技术生成

stat 函数

1 1 #include

2 2 #include

3 3 #include

4 4 intmain()5 5{6 6 structstat buf;7 7 stat("1.c", &buf);8 8 printf("1.c file size = %d\n",(int)buf.st_size);9 9 return 0;10 10 }

文件执行结果

1.c file size = 868

struct stat {

dev_t         st_dev;       //文件的设备编号

ino_t         st_ino;       //节点

mode_t        st_mode;      //文件的类型和存取的权限

nlink_t       st_nlink;     //连到该文件的硬连接数目,刚建立的文件值为1

uid_t         st_uid;       //用户ID

gid_t         st_gid;       //组ID

dev_t         st_rdev;      //(设备类型)若此文件为设备文件,则为其设备编号

off_t         st_size;      //文件字节数(文件大小)

unsigned long st_blksize;   //块大小(文件系统的I/O 缓冲区大小)

unsigned long st_blocks;    //块数

time_t        st_atime;     //最后一次访问时间

time_t        st_mtime;     //最后一次修改时间

time_t        st_ctime;     //最后一次改变时间(指属性)

};

2. fstat 函数

int fstat(int fd,struct stat *sbuf); //fd是打开的文件描述符,sbuf是存储stat结构体信息的

3. lstat 函数 // lstat类似于stat,但是命名的文件是一个符号链接时,lstat返回的是该链接符号的有个信息,而不是由该符号链接引用的文件信息!

4. dup和dup2函数

1 #include

2 #include

3 #include

4 #include

5 #include

6 #include

7

8 int main(void)9 {10 intfd, save_fd;11 char msg[] = "This is a test\n";12

13 fd = open("somefile", O_RDWR|O_CREAT, S_IRUSR|S_IWUSR);14 if(fd<0)15 {16 perror("open");17 exit(1);18 }19 save_fd =dup(STDOUT_FILENO);//记录标准输出20 dup2(fd, STDOUT_FILENO);//标准输出重定向到fd21 close(fd);22 write(STDOUT_FILENO, msg, strlen(msg));//标准输出输出到fd指向的文件23 dup2(save_fd, STDOUT_FILENO);//标准重定向返回来24 write(STDOUT_FILENO, msg, strlen(msg));//写入缓冲区,此时从屏幕输出25 close(save_fd);26 return 0;27 }

5.symlink 函数

//用来创建符号链接的

1 #include

2 int symlink(const char *actualpath,const char *sympath);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值