码迷,mamicode.com
首页 > 其他好文 > 详细

Ruby 文件处理

时间:2015-01-05 18:20:25      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:

#r read,
#w write,
#a append,
#r+ 读写方式 从文件的头位置开始读取或写入,
#w+ 读写方式,如果文件已存在清空该文件,不存在就创建一个新的文件, 
#a+ 如果文件存在就在最后面附加,如果不存在就创建一个新文件。
FileName="newfile.txt"
file=File.open(FileName,a)

file.puts test
p file.path
file.close
p File.file?(FileName)
#Dir.foreach("C:/") { |dir| puts dir  }
puts "追加的文件:#{FileName}"
File.open(FileName,a+) do |io|
  (1..10).each do |i|    
    io.puts "追加的文件:#{FileName}第 #{i}行数据"#写入文件
  end
end
File.open(FileName,r+) { |io|
  io.each { |i|
    #puts "行号:#{io.lineno}:#{i}"#读取文件
  }    
}
#File.rename(old_name, new_name)#重命名文件
#File.delete(file_name) #删除文件
file_size= File.size(FileName)#获取文件的字节大小
puts file_size
file=File.open(FileName)
puts "创建时间#{file.stat.ctime}"#创建时间
puts "最后修改时间#{file.stat.mtime}"
puts "最后访问时间#{file.stat.atime}"

puts "当前工作目录:#{Dir.pwd}"
if !File.directory?(Dir.pwd+/testdir)
  Dir.mkdir testdir#创建目录
end

Dir.foreach(Dir.pwd) do |dir|
  #puts dir#列出当前目录下所有文件和子目录
end

Dir.chdir(C:/)  #更改当前工作目录
puts "当前工作目录:#{Dir.pwd}"

#加载当前目录中所有的子目录和文件,会占用大量的内存,另一种方法是使用find模块
#Dir.glob(‘**/**‘).each  do   |filename| 
#  puts filename  
#end

#require "find" #包含find模块
#Find.find(Dir.pwd) { |path| puts path  }

require "rexml/document"
docxml=REXML::Document.new
element=docxml.add_element(book,{name=>Ruby book})
chapter1=element.add_element(c1,{ title=>c11})
chapter2=element.add_element(c2,{ title=>c22})

chapter1.add_text chapter1 
chapter2.add_text chapter2
docxml.write

 

Ruby 文件处理

标签:

原文地址:http://www.cnblogs.com/smailxiaobai/p/4203926.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!