国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 編程 > Ruby > 正文

在Ruby中處理文件的輸入和輸出的教程

2020-10-29 19:41:25
字體:
來源:轉載
供稿:網友

Ruby 提供了一整套 I/O 相關的方法,在內核(Kernel)模塊中實現。所有的 I/O 方法派生自 IO 類。

類 IO 提供了所有基礎的方法,比如 read、 write、 gets、 puts、 readline、 getc 和 printf。

本章節將講解所有 Ruby 中可用的基礎的 I/O 函數。如需了解更多的函數,請查看 Ruby 的 IO 類。
puts 語句

在前面的章節中,您賦值給變量,然后使用 puts 語句打印輸出。

puts 語句指示程序顯示存儲在變量中的值。這將在每行末尾添加一個新行。
實例

#!/usr/bin/ruby val1 = "This is variable one"val2 = "This is variable two"puts val1puts val2

這將產生以下結果:

This is variable oneThis is variable two

gets 語句

gets 語句可用于獲取來自名為 STDIN 的標準屏幕的用戶輸入。
實例

下面的代碼演示了如何使用 gets 語句。該代碼將提示用戶輸入一個值,該值將被存儲在變量 val 中,最后會被打印在 STDOUT 上。

#!/usr/bin/ruby puts "Enter a value :"val = getsputs val

這將產生以下結果:

Enter a value :This is entered valueThis is entered value

putc 語句

與 puts 語句不同,puts 語句輸出整個字符串到屏幕上,而 putc 語句可用于依次輸出一個字符。
實例

下面代碼的輸出只是字符 H:

#!/usr/bin/ruby str="Hello Ruby!"putc str

這將產生以下結果:

H

print 語句

print 語句與 puts 語句類似。唯一的不同在于 puts 語句在輸出內容后會跳到下一行,而使用 print 語句時,光標定位在同一行。
實例

#!/usr/bin/ruby print "Hello World"print "Good Morning"

這將產生以下結果:

Hello WorldGood Morning

打開和關閉文件

截至現在,您已經讀取并寫入標準輸入和輸出。現在,我們將看看如何操作實際的數據文件。
File.new 方法

您可以使用 File.new 方法創建一個 File 對象用于讀取、寫入或者讀寫,讀寫權限取決于 mode 字符串。最后,您可以使用 File.close 方法來關閉該文件。
語法

aFile = File.new("filename", "mode")  # ... 處理文件aFile.close

File.open 方法

您可以使用 File.open 方法創建一個新的 file 對象,并把該 file 對象賦值給文件。但是,File.open 和 File.new 方法之間有一點不同。不同點是 File.open 方法可與塊關聯,而 File.new 方法不能。

File.open("filename", "mode") do |aFile|  # ... process the fileend

下表列出了打開文件的不同模式:

2015410113935321.jpg (579×646)

文件查詢

下面的命令在打開文件前檢查文件是否已存在:

#!/usr/bin/ruby File.open("file.rb") if File::exists?( "file.rb" )

下面的命令查詢文件是否確實是一個文件:

#!/usr/bin/ruby # 返回 <i>true</i> 或 <i>false</i>File.file?( "text.txt" )

下面的命令檢查給定的文件名是否是一個目錄:

#!/usr/bin/ruby # 一個目錄File::directory?( "/usr/local/bin" ) # => true # 一個文件File::directory?( "file.rb" ) # => false

下面的命令檢查文件是否可讀、可寫、可執行:

#!/usr/bin/ruby File.readable?( "test.txt" )  # => trueFile.writable?( "test.txt" )  # => trueFile.executable?( "test.txt" ) # => false

下面的命令檢查文件是否大小為零:

#!/usr/bin/ruby File.zero?( "test.txt" )   # => true

下面的命令返回文件的大小:

#!/usr/bin/ruby File.size?( "text.txt" )   # => 1002

下面的命令用于檢查文件的類型:

#!/usr/bin/ruby File::ftype( "test.txt" )   # => file

ftype 方法通過返回下列中的某個值來標識了文件的類型:file、 directory、 characterSpecial、 blockSpecial、 fifo、 link、 socket 或 unknown。

下面的命令用于檢查文件被創建、修改或最后訪問的時間:

#!/usr/bin/ruby File::ctime( "test.txt" ) # => Fri May 09 10:06:37 -0700 2008File::mtime( "text.txt" ) # => Fri May 09 10:44:44 -0700 2008File::atime( "text.txt" ) # => Fri May 09 10:45:01 -0700 2008

Ruby 中的目錄

所有的文件都是包含在目錄中,Ruby 提供了處理文件和目錄的方式。File 類用于處理文件,Dir 類用于處理目錄。
瀏覽目錄

為了在 Ruby 程序中改變目錄,請使用 Dir.chdir。下面的實例改變當前目錄為 /usr/bin。

Dir.chdir("/usr/bin")

您可以通過 Dir.pwd 查看當前目錄:
puts Dir.pwd # 返回當前目錄,類似 /usr/bin

您可以使用 Dir.entries 獲取指定目錄內的文件和目錄列表:

puts Dir.entries("/usr/bin").join(' ')

Dir.entries 返回一個數組,包含指定目錄內的所有項。Dir.foreach 提供了相同的功能:

Dir.foreach("/usr/bin") do |entry|  puts entryend

獲取目錄列表的一個更簡潔的方式是通過使用 Dir 的類數組的方法:

Dir["/usr/bin/*"]

創建目錄

Dir.mkdir 可用于創建目錄:

Dir.mkdir("mynewdir")

您也可以通過 mkdir 在新目錄(不是已存在的目錄)上設置權限:

注意:掩碼 755 設置所有者(owner)、所屬組(group)、每個人(world [anyone])的權限為 rwxr-xr-x,其中 r = read 讀取,w = write 寫入,x = execute 執行。

Dir.mkdir( "mynewdir", 755 )

刪除目錄

Dir.delete 可用于刪除目錄。Dir.unlink 和 Dir.rmdir 執行同樣的功能,為我們提供了便利。

Dir.delete("testdir")

創建文件 & 臨時目錄

臨時文件是那些在程序執行過程中被簡單地創建,但不會永久性存儲的信息。

Dir.tmpdir 提供了當前系統上臨時目錄的路徑,但是該方法默認情況下是不可用的。為了讓 Dir.tmpdir 可用,使用必需的 'tmpdir' 是必要的。

您可以把 Dir.tmpdir 和 File.join 一起使用,來創建一個獨立于平臺的臨時文件:

require 'tmpdir'  tempfilename = File.join(Dir.tmpdir, "tingtong")  tempfile = File.new(tempfilename, "w")  tempfile.puts "This is a temporary file"  tempfile.close  File.delete(tempfilename)

這段代碼創建了一個臨時文件,并向其中寫入數據,然后刪除文件。Ruby 的標準庫也包含了一個名為 Tempfile 的庫,該庫可用于創建臨時文件:

require 'tempfile'  f = Tempfile.new('tingtong')  f.puts "Hello"  puts f.path  f.close

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
青青草原av在线| 香蕉视频在线观看网站| 狠狠干婷婷色| 黄色网页网址在线免费| 免费a在线观看| 国产美女视频一区二区三区| 人人在线视频| 国产精品自产拍在线观看2019 | 欧美成人久久电影香蕉| 黄色av电影在线播放| 丁香综合五月| 在线国产一区二区三区| 超碰免费在线播放| 国产黄在线观看| 青青草视频免费在线观看| 国产精品一区在线看| 在线观看国产视频| 国产精选在线视频拍拍拍| 精品国产免费第一区二区| 另类综合图区| 中文字幕av网| 国产偷窥洗澡视频| 精品176二区| 国产精品久久在线| 99热在线观看免费| 九色在线网站| jlzzjlzz欧美大全| 18被视频免费观看视频| 国产乱妇乱子| 久久精品国产亚洲a∨麻豆| 国产传媒在线播放| 国产无遮挡又黄又爽免费软件| 日本天堂影院在线视频| 国产成人亚洲精品播放器下载| 国产在线一二| 九九视频精品在线| 青娱乐在线视频观看| 国产高清视频免费最新在线| 国产美女福利在线观看| 久草.com| 最近中文av字幕在线中文| 老司机精品视频一区二区| 四虎国产精品永久在线| gogogogo高清视频在线| 天天插天天操| 精品视频二区三区| 99热国产在线| 一本久久精品| 麻豆电影传媒二区| 久久久久久91精品色婷婷| www.操操操| 黄色一级视频网站| 成在线人视频免费视频| 国产麻豆免费| 国产精品美女视频免费观看软件| 国产三区四区在线观看| 国产区视频在线| 在线一二三区| 欧美精品另类| 天堂中文资源在线| 6699久久国产精品免费| 亚洲字幕成人中文在线观看| 四虎精品视频| 国产午夜视频| av一级在线| 天堂资源最新在线| 国产精品伦一区二区三区视频| 国产亚洲精品久久久久久移动网络| 天天av天天爽| av黄色在线观看| 成人精品福利| 亚洲欧美综合乱码精品成人网| 免费a级毛片在线播放| 中文字幕在线看精品乱码| 国产黄色免费网站| 成年网在线观看免费观看网址| 最新国产在线| av高清在线| 国产精品一区二区三区高清在线| 精品国产一区二区三区四区阿崩 | 日本免费视频www| 中文字幕在线永久在线视频| 精品麻豆国产| 最近中文字幕在线中文视频| 99在线视频观看| 国产极品视频| 国产在线免费观看| 日本亚洲欧美| 亚洲精品视频区| 69日小视频在线观看| 国产一级免费黄色片| 天天插天天干| 在线观看av网站永久| 国产秀色在线www免费观看| wwww亚洲| 青青青手机在线视频观看| 精品视频麻豆入口| 国产精品麻豆一区二区三区| 国产中文字幕在线观看| 免费国产阿v视频在线观看| av中文资源在线| 一本大道久久a久久精品| 国产不卡一卡2卡三卡4卡5卡在线| 狠狠色综合久久婷婷| 九九热视频精品在线观看| 青青草原国产在线观看| 在线国产一级| 亚洲精品天堂在线| 亚洲欧美精品日韩欧美| 永久免费av网站| 在线久久视频| 本道综合精品| 久久久久久久久久久久网站| 国产精品自产拍在线网站| 国产一级网站视频在线| 国产精品9区| 欧美xxxx黑人又粗又长| 国产在线观看91| 国产一起色一起爱| 精品国产一区二区三区不卡在线| av高清在线| 黄色片av在线| 国产精品入口麻豆高清| 日本在线免费中文字幕| 最近中文字幕mv免费高清视频8| 国产精品伦一区二区三区视频| 91精品专区| 免费看ww视频网站入口| 午夜视频在线看| 在线看黄网址| 中文字幕乱在线伦视频乱在线伦视频| 国产日本在线视频| eeuss影院在线| 中文字幕视频在线免费| 在线观看国产视频| 国产一卡二卡3卡4卡四卡在线| 精品福利视频导航大全| 中文字幕2019第三页| 久久久久久久久久久久网站| 91亚洲欧美| 最新中文字幕av专区| gogogogo高清视频在线| 中文天堂av| 2019年中文字幕| 国产一级性片| 九九热在线视频| 羞羞视频在线观看免费| 国产天堂视频| 丁香综合五月| 日本高清中文字幕二区在线| 91看片在线观看| 国产调教视频在线观看| 操人视频91| 性网站在线播放| 精精国产xxxx视频在线动漫| 国产精品入口麻豆电影| 国产一级黄色片免费| 国产在线观看av| 免费视频二区| 日本在线视频www鲁啊鲁| 国产成人精品实拍在线| 国产黄在线观看免费观看不卡| 中文字幕成人乱码在线电影| 国产精品一区在线看| 丁香视频五月| 日本中文字幕在线2020| 国产精品自产拍在线网站| 免费在线黄色网址| xxx国产精品| 免费的黄网站在线观看| 狠狠狠狠狠狠操| 中文字幕不卡| 国产黄色免费在线观看| 国产高清视频在线播放| 在线观看av中文| 本道综合精品| 国产精品一区在线看| 国产寡妇树林野战在线播放| 精品卡一卡卡2卡3网站| 午夜在线不卡| 国产美女极品在线| 国产导航在线| 99久久国产视频| 欧美婷婷久久五月精品三区| 高潮毛片在线观看| 69国产精品视频| 黄网站在线观看高清免费| 国产精品白浆流出视频| 亚洲综合在线不卡| 丁香视频免费观看| 亚洲综合在线不卡| 国产网站av| 日本一级理论片在线大全| 国产专区在线播放| 在线观看中文字幕| 国产乱子视频| 日韩亚洲一区中文字幕| 尤物在线视频| 免费看ww视频网站入口| 91亚洲精选|