我試圖分析包含可變數目每行文字和數字的,像這樣的文本文件:Ruby文件IO分隔符?
foo 4.500 bar 3.00
1.3 3 foo bar
我怎樣才能讀取該文件的空間,而不是換行分隔?有什麼方法可以設置File("file.txt").foreach
方法使用空格而不是換行符作爲分隔符?
我試圖分析包含可變數目每行文字和數字的,像這樣的文本文件:Ruby文件IO分隔符?
foo 4.500 bar 3.00
1.3 3 foo bar
我怎樣才能讀取該文件的空間,而不是換行分隔?有什麼方法可以設置File("file.txt").foreach
方法使用空格而不是換行符作爲分隔符?
您可以使用
open('file.txt').read.split.each
,讓您在空間(或換行)的迭代器分離話。
File.open( 「file.txt的」)。read.split(」「)。每個
接受的答案是slurp該文件可能是一個大文本文件的問題。
更好的解決方案是IO.foreach
。這是慣用的,將由焦炭流文件的字符:
File.foreach(filename," ") {|string| puts string}
與
"this"
"is"
"an"
"example"
含
"this is an example"
結果示例文件