C# 文件处理:通过Url(如:http://abc/xx.png)去下载附件

哲学分享:
对于该完成的事。
空有精神,是谓无能力。
空有能力,是谓无精神。
既有精神又有能力时,又要清楚知道该做什么才好,并要优先解决主要矛盾。

比较久没发博客啦,那一段时间都在加班帮忙开发springBoot+myBatis+oracle的项目
(画流程图)建模-设计数据库-设计页面-开发后端,肩膀的任务变得更重要了。
闲话少说,以下代码已验证通过,比较可靠。

根据http:的请求去下载附件。
只需定义两个参数:
一是:http的url连接
二是:保存到本地的文件路径;如:D://a.rar

        ///<summary>
        /// 下载,通过http-url去下载文件到本地
        /// </summary>
        /// <param name="URL">下载文件地址:HTTP/HTTPS</param>
        /// <param name="Filename">下载后另存为(全路径)</param>
        /// <returns>成功时:"1"。失败时:返回错误信息</returns>
        public System.String SetDownloadFile(System.String str_url, System.String str_filename)
        {
            System.String result = System.String.Empty;
            try
            {
                System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(str_url);
                System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse();
                System.IO.Stream st = myrp.GetResponseStream();
                System.IO.Stream so = new System.IO.FileStream(str_filename, System.IO.FileMode.Create);
                System.Byte[] by = new System.Byte[1024];
                System.Int32 osize = st.Read(by, 0, (System.Int32)by.Length);
                while (osize > 0)
                {
                    so.Write(by, 0, osize);
                    osize = st.Read(by, 0, (System.Int32)by.Length);
                }
                so.Close();
                st.Close();
                myrp.Close();
                Myrq.Abort();
                result = "1";
            }
            catch (System.Exception ex)
            {
                result = ex.ToString();
            }
            return result;
        }

谢谢观看
作者龙文浩。java程序员+C#开发员。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值