Ejemplo n.º 1
0
        void DownFile(string filename)
        {
            if (_proxy != null)
            {
                DownFile dfPath = new DownFile {
                    FileName = filename
                };

                long           filesize   = 0;
                bool           issuccess  = false;
                string         message    = "";
                Stream         filestream = new MemoryStream();
                DownFileResult dfresult   = _proxy.DownLoadFile(dfPath);
                filesize   = dfresult.FileSize;
                issuccess  = dfresult.IsSuccess;
                message    = dfresult.Message;
                filestream = dfresult.FileStream;

                //, out issuccess, out message, out filestream
                if (issuccess)
                {
                    if (!Directory.Exists(_savePath))
                    {
                        Directory.CreateDirectory(_savePath);
                    }

                    byte[]     buffer = new byte[filesize];
                    FileStream fs     = new FileStream(_savePath + @"\" + filename, FileMode.Create, FileAccess.Write);
                    int        count  = 0;
                    while ((count = filestream.Read(buffer, 0, buffer.Length)) > 0)
                    {
                        fs.Write(buffer, 0, count);
                    }

                    //清空
                    fs.Flush();
                    //关闭流
                    fs.Close();
                }
                else
                {
                    MessageBox.Show(message);
                }
            }
        }