zoukankan      html  css  js  c++  java
  • Ruby 文件处理

    #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
    
    #YMAL库
    #FPDF库 生成PDF
    #Rubyzip库 读写zip文件
    #Rmagick库 图像文件处理
  • 相关阅读:
    python 异常类型大全
    HDU6532 Chessboard (最大费用流)
    P2764 最小路径覆盖问题 (最小点覆盖=顶点数-最大匹配)
    P3355 骑士共存问题 (最小割)
    P1251 餐巾计划 (网络流)
    P2765 魔术球问题 (网络流)
    P3381 [模板] 最小费用最大流
    P3376 [模板] 网络最大流
    P3384 [模板] 树链剖分
    BZOJ1009: [HNOI2008]GT考试 (矩阵快速幂 + DP)
  • 原文地址:https://www.cnblogs.com/smailxiaobai/p/4203926.html
Copyright © 2011-2022 走看看