循环列出目录里面的文件

来源:百度文库 编辑:神马文学网 时间:2024/04/30 20:51:14
class Dir
def walk ( prefix = nil, &walker )
e = self.entries
e.delete "."
e.delete ".."
e.collect!{ | x | File.join( prefix, x ) } if prefix
if block_given?
e.each { | x |
if File.directory?( x )
Dir.new( x ).walk( x, &walker )
end
yield x
}
end
nil
end
end
mydir = "E:/我的程序/SharpDev/MonoClassSrc"
lists = Array.new()
dirs = Array.new()
aDir = Dir.new(mydir)
aDir.walk(mydir) do |file|
if file.include?(".cs")
lists << file.gsub!("#{mydir}/", "").gsub!("/","\\")
else
dirs << file.gsub!("#{mydir}/", "").gsub!("/","\\")
end
end
dirs.each do |dir|
puts "" if dir
end
lists.each do |file|
puts "" if file
end