From: John Fink Date: 2006-07-20T03:54:45+09:00 Subject: Re: maybe I don't understand the .to_a method... ------=_Part_70300_9505282.1153335282771 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline On 7/19/06, Philip Hallstrom wrote: > > > I'm attempting to write a little program that uses the Net::HTTP library > to > > fetch a text file. The text file has lines broken up by newlines, and I > > thought I could use the .to_a method to convert a variable into an > array, > > but when I do it it puts the entire text file into the first marker on > the > > array, and the rest are nil. > > > > Here's the program. I know I'm missing something grotesquely obvious, > and > > thanks in advance for beating me with the clue stick. > > > > What I expected was for test to return what it returns, but test2[0] to > > return "This" and test2[1] to return "is". Test2[0] returns identical > > results to test. > > > > jf > > --- > > > > require 'net/http' > > require 'uri' > > > > filename = 'test.txt' > > > > def testget(filename) > > url = URI.parse('http://vineland.lib.muohio.edu/' + filename ) > > req = Net::HTTP::Get.new(url.path) > > res = Net::HTTP.start(url.host, url.port) {|http| http.request(req) } > > end > > > > test = testget(filename) > > test2 = test.to_a > > test2 = test.split(/[\n\r]+/) > > > puts test > > puts test2[0] > > puts test2[1] > > that would "eat" blank lines though, but gets you closer... > > > Aha, split. I've now tried split on arbitrary lines in irb, and it works on them. But trying split in my little program here yields the following error: testget.rb:13: private method `split' called for # (NoMethodError) Googling this hairy error gives me no leads. jf ------=_Part_70300_9505282.1153335282771--