2010-02-21 78 views
5

我试图分析包含可变数目每行文字和数字的,像这样的文本文件:Ruby文件IO分隔符?

foo 4.500 bar 3.00 
1.3 3 foo bar 

我怎样才能读取该文件的空间,而不是换行分隔?有什么方法可以设置File("file.txt").foreach方法使用空格而不是换行符作为分隔符?

回答

3

您可以使用

open('file.txt').read.split.each 

,让您在空间(或换行)的迭代器分离话。

3

File.open( “file.txt的”)。read.split(”“)。每个

3

接受的答案是slurp该文件可能是一个大文本文件的问题。

更好的解决方案是IO.foreach。这是惯用的,将由焦炭流文件的字符:

File.foreach(filename," ") {|string| puts string} 

"this" 
"is" 
"an" 
"example" 
"this is an example"结果示例文件