开发者

Ruby file IO delimiters?

I am trying to parse a text file that contains a variable number of words and numbers per line, like this:

foo 4.500 bar 3.00
1.3 3 foo bar

How can I read the file delimited by spaces instead of newlines? I开发者_Python百科s there some way I can set the File("file.txt").foreach method to use a spaces instead of newlines as a delimiter?


The accepted answer will slurp the file, which can be a problem with large text files.

A better solution is IO.foreach. It is idiomatic and will stream the file char by char:

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

Sample file containing "this is an example" results with

"this"
"is"
"an"
"example"


You can use

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

to give you an iterator over space (or newline) separated words.


File.open("file.txt").read.split(" ").each

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜