各位高手:如果可以知道文件的路径,怎样实现几个文件批量下载?运用Asp.net C#,谢谢您的指点。

解决方案 »

  1.   

    WebClient类
    http://www.baidu.com/s?wd=ASP.NET+%CE%C4%BC%FE%CF%C2%D4%D8&cl=3
      

  2.   

    谢谢彬彬,你给的网址上的资料我差不多也都看到过,现在是我对线程的概念不是很懂,能不能给个具体的代码,我现在已经实现了单个文件的下载,我想用一个string[]fileIds来记录下腰下载的所有文件的id值,然后用for循环来实现循环下载,可是,循环不执行,还是只是下载第一个文件。不知为什么,能否给解释一下。谢谢
      

  3.   


    可以模仿一下迅雷的下载模式,在.cfg文件中就存储着下载的链接和断点等
      

  4.   

    private void butUpGrade_Click(object sender, EventArgs e)
            {//开始下载服务器上的数据
                threadNumber = this.fileList.Items.Count;//开启的线程数量
                theThread = new Thread[threadNumber];
                if (threadNumber > 0)
                    BeginToDown(theThread[nCurNumber], fileList.Items[nCurNumber].ToString());
                else
                {
                    MessageBox.Show("OK", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    this.Close();
                }
            }   private void BeginToDown(Thread workThread,string strFileName)//strFileName是要下载的文件名
            {//根据文件名进行包下载
     
                string shortName=strFileName.Substring(strFileName.LastIndexOf('\\')+1);
                string fullSaveName=@"D:\edd\"+shortName;
                filestream = new FileStream(fullSaveName, FileMode.OpenOrCreate, FileAccess.Write);            //获取服务器网络流
                netStream = client.GetStream();
                string down = "LC#@" + strFileName;
                byte[] by = System.Text.Encoding.BigEndianUnicode.GetBytes(down.ToCharArray());
                //向服务器发送要下载的文件名
                netStream.Write(by, 0, by.Length);
                //刷新流
                netStream.Flush();
                //启动接收文件的线程
                workThread = new Thread(new ThreadStart(download));
                workThread.Start();            isDown = true;
                this.downProcess.Value = (nCurNumber/ threadNumber) * 100;
                if (nCurNumber == threadNumber - 1)
                {//上一包下载完毕,开始下一个包                  this.butStop_Click(null, null);
                }         
               
            }
      

  5.   

    1.netStream是什么类型的变量啊,是全局变量么,怎么定义的?
    2."LC#@" 是什么作用呢
    3.download应该是一个无参函数吧?但是没有定义实现啊?
    4.isDown是什么作用?
    真是不好意思我还是没搞清出,希望能得到答案。谢谢