FTP Programming Question

P

pbd22

Hi.

I have an FTP programming question.
I want the total size of a file being uploaded "before" it is
completely uploaded to the server. I need this for the condition:
when currentbytes = totalbytes, do something. But,
it seems that the filesize before it hits the FTP server is not equal
to the same file's bytes on the other end. I am using either of the
two methods to get the filesize "before" it lands on the remote
server:

Dim postedFile As HttpPostedFile = myfiles(count)
postedFile.InputStream.Length

-- or --

postedFile.ContentLength

and the below method to get the filesize once it is on the FTP server
(and fully uploaded):

Public Function GetFileSize(ByVal sFileName As String) As Long

If (Not (m_bLoggedIn)) Then
Login()
End If

SendCommand(("SIZE " + sFileName))

Dim size As Long = 0

If (m_iRetValue = 213) Then
size = Int64.Parse(m_sReply.Substring(4))
Else
Throw New IOException(m_sReply.Substring(4))
End If

Return size

End Function

Does anybody see why this could be happening? Has anybody else noticed
this distinction?

Thanks in advance.
 
P

pbd22

another API to consider ... Secure FTP Factory for .NET

http://www.jscape.com/sftpdotnet/


Thanks all for your replies and suggestions. Before I start to check
out alternative APIs, would somebly mind addressing the original
question? Why does the file have different byte counts when it hits
the web server and then, again, once it has landed on the remote FTP
server?

thanks.
 
R

rwaldicott

Thanks all for your replies and suggestions. Before I start to check
out alternative APIs, would somebly mind addressing the original
question? Why does the file have different byte counts when it hits
the web server and then, again, once it has landed on the remote FTP
server?

thanks.

the resulting filesize should be the same if you are transferring in
binary mode. If you are transferring in ASCII mode then the filesize
could get change due to difference in line terminators between local
machine and FTP server. In whichever client you are using make sure
you are using binary mode.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top