收集的多个ruby遍历文件夹代码实例
收集的多个ruby遍历文件夹代码实例
发布时间:2015-06-06 来源:查字典编辑
摘要:这篇文章主要介绍了收集的多个ruby遍历文件夹代码实例,本文总结了4个代码片段,小编推荐最后一个方法,因为它很简洁优雅,需要的朋友可以参考下...

这篇文章主要介绍了收集的多个ruby遍历文件夹代码实例,本文总结了4个代码片段,小编推荐最后一个方法,因为它很简洁优雅,需要的朋友可以参考下

一、遍历文件夹下所有文件,输出文件名

代码如下:

def traverse_dir(file_path)

if File.directory? file_path

Dir.foreach(file_path) do |file|

if file !="." and file !=".."

traverse_dir(file_path+"/"+file)

end

end

else

puts "File:#{File.basename(file_path)}, Size:#{File.size(file_path)}"

end

end

traverse_dir('D:/apache-tomcat')

二、ruby遍历文件夹

代码如下:

def get_file_list(path)

Dir.entries(path).each do |sub|

if sub != '.' && sub != '..'

if File.directory?("#{path}/#{sub}")

puts "[#{sub}]"

get_file_list("#{path}/#{sub}")

else

puts " |--#{sub}"

end

end

end

end

三、python如何遍历一个目录输出所有文件名

代码如下:

#coding=utf-8

'''

Created on 2014-11-14

@author: Neo

'''

import os

def GetFileList(dir, fileList):

newDir = dir

if os.path.isfile(dir):

fileList.append(dir.decode('gbk'))

elif os.path.isdir(dir):

for s in os.listdir(dir):

#如果需要忽略某些文件夹,使用以下代码

#if s == "xxx":

#continue

newDir=os.path.join(dir,s)

GetFileList(newDir, fileList)

return fileList

list = GetFileList('D:workspacePyDemofas', [])

for e in list:

print e

result:

代码如下:

D:workspacePyDemofasfile120141113a.20141113-1100.log

D:workspacePyDemofasfile120141113a.20141113-1101.log

D:workspacePyDemofasfile120141113a.20141113-1140.log

D:workspacePyDemofasfile220141113a.20141113-1100.log

D:workspacePyDemofasfile220141113a.20141113-1101.log

D:workspacePyDemofasfile220141113a.20141113-1140.log

四、简洁遍历写法

代码如下:

import os

def iterbrowse(path):

for home, dirs, files in os.walk(path):

for filename in files:

yield os.path.join(home, filename)

for fullname in iterbrowse("/home/bruce"):

print fullname

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新编程语言综合学习
热门编程语言综合学习
编程开发子分类