f



copy txt file - only copies 1/3 of the file - what happened?

File.open('oldFile.txt', 'r') do |f1| #file contains XML type data
     m = f1.gets
     File.open('newFile.txt','w') do |f2| #newFile to separate data in
oldFile
     f2.puts m.split("<")
  end
end

Hello All.
There is something that I did that was weird here. I say this because
when I open the new file that it creates its 1/3 the size of the
original. It seems to just completely cut off. I took off the .split and
it still did this, so I know it has nothing to do with split. What do
you think is going on?

oldFile.txt
contains XML formatted data.

newFile.txt
is supposed to break each line up what starts with < giving a new line
per element for later use.
-- 
Posted via http://www.ruby-forum.com/.

0
mmc_collins (124)
12/11/2008 3:37:00 AM
comp.lang.ruby 48886 articles. 0 followers. Post Follow

3 Replies
680 Views

Similar Articles

[PageSpeed] 38

On Dec 10, 2008, at 9:37 PM, Mmcolli00 Mom wrote:

> File.open('oldFile.txt', 'r') do |f1| #file contains XML type data
>     m = f1.gets
>     File.open('newFile.txt','w') do |f2| #newFile to separate data in
> oldFile
>     f2.puts m.split("<")
>  end
> end


Perhaps replace line 2 with:

     m = f1.read

?


0
matt9097 (95)
12/11/2008 3:40:20 AM
On Thu, Dec 11, 2008 at 11:37 AM, Mmcolli00 Mom <mmc_collins@yahoo.com> wrote:
> File.open('oldFile.txt', 'r') do |f1| #file contains XML type data
>     m = f1.gets

ok, this gets just one line of text fr f1

>     File.open('newFile.txt','w') do |f2| #newFile to separate data in
> oldFile
>     f2.puts m.split("<")

and you placed that one line on f2

>  end
> end

and that is all. you just copied one line.

hint: File.open by itself does not loop.

0
botpena (164)
12/11/2008 3:55:14 AM
Thanks for the help Matthew and Guest botp! It worked great.
-- 
Posted via http://www.ruby-forum.com/.

0
mmc_collins (124)
12/11/2008 4:04:07 AM
Reply: