论坛首页 编程语言技术论坛

RUBY搜索文件夹, 搜索文件并按行读取内容

浏览 4354 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (4)
作者 正文
   发表时间:2011-06-17  

1. 搜索文件夹

 

 

@directory_path = "C:\\test\\"
if File.directory? @directory_path
  Dir.foreach(@directory_path) do |file|
    if file!="." and file!=".." and file!=".svn" and (File.directory?(@directory_path+file))
     puts file
    end
  end
end 
 

 

2.搜索文件

 

 

Find.find("C:\\test\\dir1") do |path|  
  if FileTest.directory?(path)
    if File.basename(path)[0] == ?.
      Find.prune       
    else
      next
    end
  else
    puts  "Filename     : " +  File.basename(path)
  end
end
 

 

3. 按行读取文件

 

 

File.open("C:\\test\\dir1\\filename", "r") do |file|
    file.each_line do |line|
        puts line
    end
end
 

 

   发表时间:2011-06-20  
yanzilee9292 写道

1. 搜索文件夹

 

 

@directory_path = "C:\\test\\"
if File.directory? @directory_path
  Dir.foreach(@directory_path) do |file|
    if file!="." and file!=".." and file!=".svn" and (File.directory?(@directory_path+file))
     puts file
    end
  end
end 
 

 

2.搜索文件

 

 

Find.find("C:\\test\\dir1") do |path|  
  if FileTest.directory?(path)
    if File.basename(path)[0] == ?.
      Find.prune       
    else
      next
    end
  else
    puts  "Filename     : " +  File.basename(path)
  end
end
 

 

3. 按行读取文件

 

 

File.open("C:\\test\\dir1\\filename", "r") do |file|
    file.each_line do |line|
        puts line
    end
end
 

 


楼主想说什么?
0 请登录后投票
   发表时间:2011-06-20  
就一点基础的代码 可以实现很多功能 才放上去,没咋整理的
0 请登录后投票
   发表时间:2011-07-07  
#     if File.basename(path)[0] == ?.  
#       Find.prune         
#     else  
#       next  
#     end 

你这是打算做什么?

在之前你已经判断出来些是文件夹了,那么:

File.basename得到的就是文件夹的名称呀。那你不就是永远都是执行next命令呀.

 

0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics