0
我正在讀取文件的內容到數組中。一行中的最後一項將帶有行尾的字符與它結合,這是我不想要的。下面是我在做什麼:如何在讀取文件時切斷行尾?
@arr = []
File.open('somefile.txt', 'r') do |file|
while (line = file.gets)
puts "'#{line.split('|')[2]}'"
@arr << line
end
end
文件中的數據是這樣的:
col1|col2|col3
col1|col2|col3
col1|col2|col3
爲col3
,它包括換行符結束。我可以從上面的puts
,其輸出告訴本:
'col3
'
我試過file.gets.chomp但引發以下錯誤:
undefined method `chomp' for nil:NilClass (NoMethodError)
如何刪除行的末尾字符?
嘗試: 如果(line.size> 0){ 看跌期權「 '#{line.split(' | ')[2]}'「 @arr << line } – Kamae
我建議你寫'@arr = []; File.foreach('animals.txt'){| line | @arr << line.chomp}; @arr#=> [「col1 | col2 | col3」,「col1 | col2 | col3」,「col1 | col2 | col3」]'。 –