Ruby语言入门(14)- 内部类 -File::Stat

上一篇 / 下一篇  2013-02-04 14:40:16 / 个人分类:语言

File::Stat 是保存文件信息的对象的类.

生成方法:

File::Stat.new(path)
生成并返回一个关于path的File::Stat对象. 

afile=File::Stat.new("c:\\test.jpg")
=> $<Fiel::Stat dev=0x2.........+0800>

File::Stat
生成并返回一个File::Stat对象. 

bfile=File::Stat
=>File::Stat
cfile=b.new("c:\\test.jpg")
=> $<Fiel::Stat dev=0x2.........+0800>

self <=> other
比较文件的最终更新时间.若self比other新就返回正数,相等就返回0,旧则返回负数.

afile<=>cfile
=>0

ftype
返回一个表示文件类型的字符串.该字符串应是下列之一:
  • "file"
  • "directory"
  • "characterSpecial"
  • "blockSpecial"
  • "fifo"
  • "link"
  • "socket"
  • "unknown"
afile.ftype
=>"file"

dev
设备号(文件系统)

afile.dev
=>2

dev_major
dev的major号码部分

afile.dev_major
=>nil

dev_minor 
dev的minor号码部分

afile.dev_minor
=>nil

ino
i-node 号

afile.ino
=>0

mode
文件模式

afile.mode
=>33188

nlink
hard link数

afile.nlink
=>1

uid
owner的userID

afile.uid
=>0

gid
owner的groupID

afile.gid
=>0

rdev
设备类型

afile.rdev
=>2

rdev_major
rdev的major号码部分

afile.rdev_major
=>nil

rdev_minor
rdev的minor号码部分

afile.rdev_minor
=>nil

size
文件大小(以字节为单位)

afile.size
=>25780

blksize
理想的I/O的块大小

afile.blksize
=>nil

blocks
被分配的块数

afile.blocks
=>nil

atime
最终访问时间

afile.atime
=>2013-02-04 14:17:43 +0800

mtime
最终更新时间

afile.atime
=>2013-01-21 16:07:43 +0800

ctime
最终i-node变更时间

afile.ctime
=>2013-01-21 16:07:43 +0800


下列判断方法等同于那些与FileTest同名的模块函数. 虽然它们的参数中使用的是文件名,但却对Stat本身进行判断.

directory?
若为目录则为真

afile.directory?
=>false

readable?
若可读则为真

afile.readable?
=>true

readable_real?
若实用户/实组可以读取就为真

afile.readable_real?
=>true

writable?
若可写则返回真

afile.writable?
=>true

writable_real?
若实用户/实组可以写入就为真

afile.writable?
=>true

executable?
若有效用户/组ID能执行就为真

afile.executable?
=>false

executable_real?
若实用户/组ID能执行就为真

afile.executable_real?
=>false

file?
若为普通文件则返回真

afile.file?
=>true

zero?
若大小为0就为真

afile.file?
=>false

size?
文件大小(若为0则为伪)

afile.size?
=>25780

owned?
若属于自己则为真

afile.owned?
=>true

grpowned?
若组ID与执行组ID相等则为真

afile.grpowned?
=>false

pipe?
若是带名称管道(FIFO)则为真

afile.pipe?
=>false

symlink?
若是符号连接则为真

afile.symlink?
=>false

socket?
若是socket则为真

afile.socket?
=>false

blockdev?
若是块专用文件则为真

afile.blockdev?
=>false

chardev?
若是字符专用文件则为真

afile.chardev?
=>false

setuid?
若被setuid则为真

afile.setuid?
=>false

setgid?
若被setgid则为真

afile.setgid?
=>false

sticky?
若设定了粘着位(sticky bit)则为真

afile.sticky?
=>false

TAG:

 

评分:0

我来说两句

日历

« 2024-04-25  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 150915
  • 日志数: 185
  • 文件数: 6
  • 建立时间: 2007-08-06
  • 更新时间: 2015-01-06

RSS订阅

Open Toolbar