File Uploading from client to FTP.
private void UploadFileToFtp(string ftpServer, string ftpUser, string ftpPass, string filename,List<string> files, out string strMsg)
{
strMsg = string.Empty;
foreach (string file in files)
{
System.IO.FileInfo fileInf = new System.IO.FileInfo(file);
FtpWebRequest reqFTP;
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(string.Format("{0}/{1}", ftpServer, fileInf.Name)));
reqFTP.Credentials = new NetworkCredential(ftpUser, ftpPass);
reqFTP.KeepAlive = false;
reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
reqFTP.UseBinary = true;
reqFTP.ContentLength = fileInf.Length;
int buffLength = 20480;
byte[] buff = new byte[buffLength];
int contentLen;
System.IO.FileStream fs = fileInf.OpenRead();
try
{
System.IO.Stream strm = reqFTP.GetRequestStream();
contentLen = fs.Read(buff, 0, buffLength);
while (contentLen != 0)
{
strm.Write(buff, 0, contentLen);
contentLen = fs.Read(buff, 0, buffLength);
}
strm.Close();
fs.Close();
strMsg = "Upload Successful ";
}
catch (Exception ex)
{
strMsg += string.Format("Ftp Upload Error for file :{0} and Error is !: {1}",file,ex.Message);
}
}
}
Join the conversation! Your thoughts help the community grow.