C# 模拟HTTP请求的服务器

jiaoshiyao 2014-03-20 11:07:30
我想让别人能够直接通过 在浏览器上 输入一段URL 能够访问
我在用Socket模拟的IIS 传送的内容 主要是图片下载
...全文
141 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
霜寒月冷 2014-03-20
  • 打赏
  • 举报
回复
    class clsDown
    {
        static string FileName = "";//记录要下载的文件名
        static long FileLength = 0; //记录文件大小
        static long count = 0;
        static long sPosstion = 0;//本地已下载完的大小
        public static  void DownloadFile(string strFileName, string strUrl)
        {
            //打开上次下载的文件或新建文件
            int CompletedLength = 0;//记录已完成的大小

            FileStream FStream;
            if (File.Exists(strFileName))
            {
                FStream = File.OpenWrite(strFileName);
                sPosstion = FStream.Length;
                FStream.Seek(sPosstion, SeekOrigin.Current);//移动文件流中的当前指针
            }
            else
            {
                FStream = new FileStream(strFileName, FileMode.Create);
                sPosstion = 0;
            }
            //打开网络连接
            try
            {
                HttpWebRequest myRequest = (HttpWebRequest)HttpWebRequest.Create(strUrl);
                if (CompletedLength > 0)
                    myRequest.AddRange((int)CompletedLength);//设置Range值
                //向服务器请求,获得服务器的回应数据流
                HttpWebResponse webResponse = (HttpWebResponse)myRequest.GetResponse();
                FileLength = webResponse.ContentLength;//文件大小
                Stream myStream = webResponse.GetResponseStream();
                byte[] btContent = new byte[1024];
                if (count <= 0) count += sPosstion;

                while ((CompletedLength = myStream.Read(btContent, 0, 1024)) > 0)
                {
                    FStream.Write(btContent, 0, CompletedLength);
                    count += CompletedLength;
                }
                FStream.Close();
                myStream.Close();
                //MessageBox.Show("文件下载完成!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch
            {
                FStream.Close();
            }
        }
    }
给你这个代码
jy251 2014-03-20
  • 打赏
  • 举报
回复
你的意思是你想用C# 做一个IIS??

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧