第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

Ruby 的 Dir 類

直到本章為止,我們所做的所有工作都涉及到處理內(nèi)存中的數(shù)據(jù)。既然我們已經(jīng)涵蓋了 Ruby 語言的所有基礎(chǔ)知識,是時候?qū)⑽覀兊淖⒁饬D(zhuǎn)向使用 Ruby 中的文件和目錄了。本章中會對 Ruby 如何操作目錄做具體介紹。

1. Ruby 中更改目錄

啟動 Ruby 應(yīng)用程序時,通常是從特定目錄完成的。通常,有必要從 Ruby 代碼中導(dǎo)航到文件系統(tǒng)上其他位置的目錄。Ruby 在 Dir 類中提供了許多有用的目錄導(dǎo)航方法。首先,標(biāo)識當(dāng)前目錄通常很有用。

這可以通過Ruby Dir類的pwd方法完成:

Dir.pwd => "/home/ruby"

我們同樣可以使用pwd查看當(dāng)前目錄:

> Dir.pwd 
=> "/home/ruby"

使用 Ruby Dir 類的 chdir 方法可以在 Ruby 中更改當(dāng)前工作目錄。此方法將目標(biāo)目錄的路徑作為參數(shù):

Dir.chdir("/home/ruby/test")

2. 創(chuàng)建新目錄

Ruby 中的目錄創(chuàng)建由 Dir 類的 mkdir 方法處理。此方法將新目錄的路徑作為其參數(shù)。這可以是目錄的完整路徑,也可以是基于當(dāng)前工作目錄的相對路徑:

Dir.mkdir("/home/ruby/temp")
=> 0

3. Ruby 中的目錄列表

導(dǎo)航到所需目錄后,通常需要獲取該目錄中包含的文件列表??梢允褂?code>entries方法獲得這樣的列表。entries方法將需要列出目錄的路徑作為參數(shù),并返回包含該目錄中文件名的數(shù)組:

Dir.entries(".")
=> ["techotopia_stats.jpg", "toolButton.png", ".", "..", "techotopia_stats_since_start.jpg", "music_728x90_1.jpg", 
"music_468x60_a.jpg", "Fedora_essentials.jpg"]

我們可以使用了解Ruby數(shù)組中介紹的一些技術(shù)從數(shù)組中提取元素:

dirListing.each { |file| puts file }


# ---- 輸出結(jié)果 ----
techotopia_stats.jpg
toolButton.png
.
..
techotopia_stats_since_start.jpg
music_728x90_1.jpg
music_468x60_a.jpg
Fedora_essentials.jpg

另外,我們可以利用Dir類的foreach方法獲得相同的結(jié)果:

Dir.foreach(".") { |file| puts file }

# ---- 輸出結(jié)果 ----
techotopia_stats.jpg
toolButton_IST.png
.
..
techotopia_stats_since_start.jpg
music_728x90_1.jpg
music_468x60_a.jpg
Fedora_essentials.jpg

4. 小結(jié)

本章介紹了 Ruby 中目錄處理的基礎(chǔ)知識,下一章我們會介紹文件處理的概念。