/// <summary> /// WebClient上传文件至服务器 /// </summary> /// <param name="localFilePath">文件名,全路径格式</param> /// <param name="serverFolder">服务器文件夹路径</param> /// <returns></returns> public static bool UploadFile(string localFilePath, string serverFolder) { string uriString; // 得到文件名,文件扩展名字,服务器路径 uriString = serverFolder + localFilePath.Substring(localFilePath.LastIndexOf("\\") + 1); // 创建WebClient实例 WebClient myWebClient = new WebClient(); myWebClient.Credentials = CredentialCache.DefaultCredentials; // 要上传的文件 FileStream fs = new FileStream(localFilePath, FileMode.Open, FileAccess.Read); BinaryReader r = new BinaryReader(fs); try { //使用UploadFile方法可以用下面的格式 byte[] postArray = r.ReadBytes((int)fs.Length); Stream postStream = myWebClient.OpenWrite(uriString, "PUT"); if (postStream.CanWrite) { postStream.Write(postArray, 0, postArray.Length); } else { MessageBox.Show("文件目前不可写!"); } postStream.Close(); } catch { MessageBox.Show("文件上传失败,请稍候重试~"); return false; } return true; }
服务器路径 http://192.168.0.141/UpImage/
本地文件路径是绝对路径
在操作系统中路径是 如D:\123\abc.txt
开发环境中断点取得的路径就是 D:\\123\\abc.txt
具体是转译字符的关系。