winform,使用如下代码上传单个文件可以,如何同时上传多个文件呢?
winform,使用如下代码上传单个文件可以,如何同时上传多个文件呢?
public void Upload(string filename)
         {
             FileInfo fileInf = new FileInfo(filename);
             string uri = "ftp://" + ftpServerIP + "/" + fileInf.Name;
             FtpWebRequest reqFTP;
             //通过前面得到的uri创建FtpWebRequest对象  
             reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" + ftpServerIP + "/" + fileInf.Name));
             // 提供网络允许的基于密码的身份验证方案            
             reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
             //默认情况下KeepAlive是true
             reqFTP.KeepAlive = false;
             //指定要执行的命令  
             reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
             //指定数据的传输类型  
             reqFTP.UseBinary = true;
             //指定上传文件的长度  
             reqFTP.ContentLength = fileInf.Length;
             // 缓冲区大小设置成2kb
             int buffLength = 2048;
             byte[] buff = new byte[buffLength];
             int contentLen;
             //打开一个文件流来读入上传的文件  
             FileStream fs = fileInf.OpenRead();
             try
             {
                 // 把要上传的文件写入流
                 Stream strm = reqFTP.GetRequestStream();
                 //从文件流中读取数据,一次读2kb大小的数据  
                 contentLen = fs.Read(buff, 0, buffLength);
                 // Till Stream content ends
                 while (contentLen != 0)
                 {
                     //把文件的内容从文件流写到FTP上传流中  
                     strm.Write(buff, 0, contentLen);
                     contentLen = fs.Read(buff, 0, buffLength);
                 }
                 MessageBox.Show("上传成功");
                 //关闭文件流和请求流  
                 strm.Close();
                 fs.Close();
             }
             catch (Exception ex)
             {
                 MessageBox.Show(ex.Message, "上传出错");
             }
         }
private void button1_Click(object sender, EventArgs e)
         {
             OpenFileDialog opFilDlg = new OpenFileDialog();
             if (opFilDlg.ShowDialog() == DialogResult.OK)
             {
                 Myclass.Upload(opFilDlg.FileName);              
             }
         }
------解决方案--------------------
循环上传,要么开多个线程,每个线程负责一个文件
------解决方案--------------------加油,胶水!
------解决方案--------------------1L说的很清楚了