Winform 如何实现文件上传啊?谁有详细的代码啊?
使用Winform上传文件至服务器,使用的是webClientSystem.Net.WebClientmyWebClient=newSystem.Net.WebClien...
使用Winform上传文件至服务器,使用的是webClient
System.Net.WebClient myWebClient = new System.Net.WebClient();
byte[] bytes = myWebClient.UploadFile(Main.sys_url + "/Uploader.ashx", "POST", fileName);
然后在服务器里面有个.ashx文件接收
public void ProcessRequest(HttpContext hc)
{
foreach (string fileKey in hc.Request.Files)
{
HttpPostedFile file = hc.Request.Files[fileKey];
file.SaveAs(Path.Combine(hc.Server.MapPath("."), file.FileName));
}
}
我应该怎么给他该路径以及图片的文件名称,图片不能重复上传 展开
System.Net.WebClient myWebClient = new System.Net.WebClient();
byte[] bytes = myWebClient.UploadFile(Main.sys_url + "/Uploader.ashx", "POST", fileName);
然后在服务器里面有个.ashx文件接收
public void ProcessRequest(HttpContext hc)
{
foreach (string fileKey in hc.Request.Files)
{
HttpPostedFile file = hc.Request.Files[fileKey];
file.SaveAs(Path.Combine(hc.Server.MapPath("."), file.FileName));
}
}
我应该怎么给他该路径以及图片的文件名称,图片不能重复上传 展开
2个回答
展开全部
使用socket技术呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我有。
追问
可以共享一下么?
追答
///
/// 上传文件至服务器
///
/// 本地路径
/// 服务器路径
private void UpLoadFile(string fileName, string uriStr)
{
string newFileName = DateTime.Now.ToString("yyMMddhhmmss") + DateTime.Now.Millisecond.ToString() + fileName.Substring(fileName.LastIndexOf("."));
string fileNameExt = fileName.Substring(fileName.LastIndexOf(".") + 1);
if (!uriStr.EndsWith("\\"))
uriStr = uriStr + "\\";
uriStr = uriStr + newFileName;
WebClient client = new WebClient(); //创建WebClient实例
client.Credentials = CredentialCache.DefaultCredentials;
FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
try
{
byte[] bytes = br.ReadBytes((int)fs.Length);
Stream stream = client.OpenWrite(uriStr, "PUT");
if (stream.CanWrite)
{
stream.Write(bytes, 0, bytes.Length);
}
else
{
MessageBox.Show("文件目前不可写");
}
MessageBox.Show("上传成功!");
txtServerPath.Text = uriStr;
}
catch
{
MessageBox.Show("上传失败!");
}
}
有什么地方看不懂得就问我啊,呵呵
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询