On Saturday, July 24, 2004, 8:41:58 PM, gabriele wrote:

>>So that I can get one line in file.txt by random
>>more flexibly just like:
>>
>>1:  srand 5269
>>2:  f = File.new( "file.txt", "r" )
>>3:  print f.readlines[ rand( lines_of_file-1 ) ]
>>However, I don't want to "loop" the loop :(
>>Is there any object or method I can use ?

> dunno what you mean by "loop the loop", sorry.

> Anyway this may work:
>  words=File.read('w.txt').split("\n")
>  word= words[rand(words.size)-1] 

I think you want

  lines = File.readlines('w.txt')
  random_line = lines[rand(lines.size)]

rand(n) returns an integer in the range 0...n, which is good for an
array index.

Gavin