国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Asp.net上傳文件后臺通過二進制流發送到其他Url保存

2019-11-17 02:00:13
字體:
來源:轉載
供稿:網友

asp.net上傳文件后臺通過二進制流發送到其他Url保存

實際情況一般有單獨的站點存放靜態文件,比如圖片、office文檔等。A站點的操作需要上傳文件到B站點,

下面介紹一種方法通過System.Net.WebClient類的UploadData方法 。

uploadFile.aspx html:

<form id="form1" runat="server">    <div>        <asp:FileUpload runat="server" ID="fileUp" AllowMult

uploadFile.cs 后臺代碼

 PRotected void btnLoad_Click(object sender, EventArgs e)        {            if (fileUp.HasFile)            {                var list = fileUp.PostedFiles;                foreach (var item in list)                {                    string fileDoc = System.IO.Path.GetExtension(item.FileName).ToLower(); //后綴名                    int fileLength = (int)item.InputStream.Length;//InputStream.Length;                    byte[] byteFile = new byte[fileLength];                    item.InputStream.Read(byteFile, 0, fileLength);                    item.InputStream.Seek(0, System.IO.SeekOrigin.Begin); //讀取流之后設置設置當前流的位置,因為md5加密也需要用到該流                    string md5Value =  Com.MD5.MyMD5.getMd5Hash(item.InputStream); //得到上傳文件流的MD5string url = string.Format("http://localhost:4884/SaveFile.ashx?name=" + md5Value + "&ext=" + fileDoc);  //保存流的處理文件路徑                    System.Net.WebClient wc = new System.Net.WebClient();                    byte[] bts = wc.UploadData(url, "POST", byteFile);                    wc.Dispose();                    string filePath = System.Text.Encoding.UTF8.GetString(bts); //獲取SaveFile.ashx返回                }            }        }
Com.MD5.MyMD5.getMd5Hash方法請看:我的C# MD5摘要算法、哈希算法SaveFile.ashx 處理程序
 /// <summary>    /// SaveFile 的摘要說明    /// </summary>    public class SaveFile : IHttpHandler    {        public void ProcessRequest(HttpContext context)        {            lock (context.Request.InputStream)            {                HttpRequest Request = context.Request;                string path = ""; string filenName = "";                string re = "";                if (Request.HttpMethod.ToLower() == "post")                {                    try                    {                        using (Request.InputStream)                        {                            string name = Request["name"];                            string s = Request["ext"];                            byte[] bytes = new byte[Request.InputStream.Length];                            Request.InputStream.Read(bytes, 0, bytes.Length);                             Request.InputStream.Seek(0, SeekOrigin.Begin);//設置當前流的位置                            //Request.InputStream.Position = 0;                            Request.InputStream.Flush();                            Request.InputStream.Close();                            Request.InputStream.Dispose();                            Random rnd = new Random();                            int n = rnd.Next(1000, 9999);                            //filenName = "/file/" + n.ToString() + "-" + DateTime.Now.ToString("yyyyMMddHHmmssss") + s;                            filenName = "/file/"+name + s;                            path = context.Server.MapPath(filenName);                            FileStream fs = new FileStream(path, FileMode.Create);                            BinaryWriter bw = new BinaryWriter(fs);                            bw.Write(bytes);                            bw.Close();                            fs.Close();                            re = filenName;                           //System.Threading.Thread.Sleep(500);                        }                    }                    catch (Exception ex)                    {                                            }                }                context.Response.ContentType = "text/plain";                context.Response.Write(re);                context.Response.End();            }        }        public bool IsReusable        {            get            {                return false;            }        }    }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 交口县| 聊城市| 新民市| 江山市| 沂源县| 吴忠市| 莱阳市| 侯马市| 尉犁县| 龙井市| 太仆寺旗| 北票市| 龙泉市| 神农架林区| 延庆县| 安塞县| 准格尔旗| 惠来县| 夏邑县| 沈阳市| 独山县| 北流市| 聊城市| 鄯善县| 洞口县| 六枝特区| 华安县| 陆丰市| 桐梓县| 钟祥市| 开鲁县| 尉犁县| 临清市| 潮安县| 黎川县| 张家川| 芜湖市| 建阳市| 萍乡市| 辽阳市| 奇台县|