在 Ruby 中讀取檔案的行

Stewart Nguyen 2023年1月30日 2022年5月18日
  1. 在 Ruby 中使用 File#readlines 讀取檔案的行
  2. 在 Ruby 中使用 File#foreach 讀取檔案的行
在 Ruby 中讀取檔案的行

在 Ruby 中,File 物件是當前程式可以訪問的任何檔案的抽象。

由於各種原因,我們需要處理檔案,包括以 CSV 格式匯出月度報告、讀取資料檔案以及將它們匯入到我們的資料庫中。

這篇文章將介紹在 Ruby 中讀取檔案的兩種不同方法。

在 Ruby 中使用 File#readlines 讀取檔案的行

File#readlines 接受一個檔名來讀取並返回一個行陣列。換行符 \n 可以包含在每一行中。

lines = File.readlines('foo')

輸出:

["line 1\n", "line 2"]

處理大檔案時必須小心,File#readlines 將一次讀取所有行並將它們載入到記憶體中。

在 Ruby 中使用 File#foreach 讀取檔案的行

File#foreach 接受一個檔名和一個指定如何處理當前行的塊。foreach 優於 readlines 因為它逐行讀取;因此它使用更少的記憶體。

File.foreach('foo') do |line|
puts line
end

輸出:

line 1
line 2

相關文章 - Ruby File