From: Ross Bamford Date: 2006-11-01T23:05:16+09:00 Subject: Re: File I/O On Wed, 01 Nov 2006 13:50:49 -0000, name pipe wrote: > Hello, > > I have some text to be written to a file. > After receiving data from webrick server I modify it lil bit and then > write it to a file. > > fd = File.open("file.txt", "w") > fd.puts "#{data}" > > The code doesnt give error and runs successfully however file.txt > doesnt contain any data. > Just puts "#{data}" gives a give output on console. Means its not empty. > > Can anyone tell me why does it happen ? > You're never closing the file, which is why it's empty (your writes are never flushed). Try either fd.close at the end, or (better IMHO) use the block form: File.open("file.txt", "w") do |fd| fd.puts "#{data}" # or fd.puts data.to_s end Hope that helps. -- Ross Bamford - rosco@roscopeco.remove.co.uk