fstat & stat 使用
//得到文件状态代码
int main(int arg, char *args[])
{
int fd = open(args[1], O_RDONLY);
if (fd == -1)
{
printf("error is %s
", strerror(errno));
}else
{
printf("success fd = %d
", fd);
struct stat buf;
fstat(fd, &buf);
if (S_ISREG(buf.st_mode))//判断文件是否为标准文件
{
printf("%s is charfile
", args[1]);
}
if (S_ISDIR(buf.st_mode))//判断文件是否为目录
{
printf("%s is dir
", args[1]);
}
printf("%s size =%d
", args[1], buf.st_size);//得到文件大小
close(fd);
}
return 0;
}
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: mina源码浅析——读写发操作
- 下一篇: Linux中fstat、stat和lstat的用法与区别
