WebClient 客户端 上传文件至服务器

本文介绍了一种使用C#中的WebClient类上传文件到服务器的方法。通过实例代码展示了如何读取本地文件并以二进制形式发送到指定的服务器路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


/// WebClient 上传文件至服务器
        /// </summary>
        /// <param name="fileNamePath">文件名,全路径格式</param> 
        /// <param name="uriString">服务器文件夹路径</param>  
 private string UpLoadFile(string fileNamePath, string uriString)
        {

            uriString = @"C:\新建文件夹";
            string fileName = fileNamePath.Substring(fileNamePath.LastIndexOf("\\") + 1);
            string fileNameExt = fileName.Substring(fileName.LastIndexOf(".") + 1);
            if (uriString.EndsWith("\\") == false)
                uriString = uriString + "\\";

            WebClient myWebClient = new WebClient();
            myWebClient.Credentials = CredentialCache.DefaultCredentials;

            FileStream fs = new FileStream(fileNamePath, FileMode.Open, FileAccess.Read);
            //FileStream fs = OpenFile();  
            BinaryReader r = new BinaryReader(fs);
            try
            {
                uriString = uriString + fileName ;
                //myWebClient.UploadFile(uriString,"PUT",fileNamePath); 
                byte[] postArray = r.ReadBytes((int)fs.Length);
                Stream postStream = myWebClient.OpenWrite(uriString, "PUT");
                if (postStream.CanWrite)
                {
                    postStream.Write(postArray, 0, postArray.Length);
                }
                else
                {
                    throw new Exception("文件目前不可写");
                }
                postStream.Close();
                return uriString;
            }
            catch (Exception ex)
            {
                throw new Exception("文件上传失败,请稍候重试!" + ex);
            }
           
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值