From: Jano Svitok Date: 2007-10-28T03:57:38+09:00 Subject: Re: FTP size incorrect for files > 4GB On 10/27/07, Raymond O'Connor wrote: > The net/ftp size method is supposed to return the size of a remote file, > but when the size of the remote file is > 4GB it seems to return the > wrong size. > > The size of the remote file I'm testing is about 4.5 GB and size() > returns about 0.5 GB. Anyone having the same problems? Is there > somewhere I can report this problem? It works for me. Can you 1. post test code to reproduce, 2. specify ruby version and operating system? You may try checking '12345678923456'.to_i as to_i is used to convert string response to integer. Finally, try running the ftp command manually, to see the precise ftp server response. The code in net/ftp strips first three and the last character. Maybe your server responds in a slightly different format. For more details see net/ftp source, It's pure ruby and easy to understand (at least the size method). Jano ruby -v: ruby 1.8.5 (2006-08-25) [i386-mswin32] (one-click, xp sp2) require 'net/ftp' require 'test/unit' class TestFtp < Test::Unit::TestCase def setup @ftp = Net::FTP.new('ftp.tuwien.ac.at') @ftp.login @ftp.chdir('opsys/linux/Mandrake-iso/2008.0') end def test_size assert_equal 4612227072, @ftp.size('mandriva-linux-2008.0-free-dvd-x86_64.iso') end def teardown @ftp.close end end