c/s 给 服务器上传文件(c/s和b/s互传文件)
2024-10-19 03:34:54
//c/s 代码 private void button1_Click(object sender, EventArgs e) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.InitialDirectory = "c:\\";//注意这里写路径时要用c:\\而不是c:\ openFileDialog.Filter = "所有文件|*.*|word|*.doc|word|*.docx|Excel|*.xlsx|Excel|*.xls|图片pdf|*.pdf|图片png|*.png"; // openFileDialog.RestoreDirectory = true; openFileDialog.FilterIndex = 1; DataSet ds = new DataSet(); try { if (openFileDialog.ShowDialog() == DialogResult.OK) { FileInfo files = new FileInfo(openFileDialog.FileName); if (Config.Ext.Contains(files.Extension) == false) { MessageBox.Show("不允许上传此类型的文件"); return; } // 获得文件大小KB为单位 fileLength = Convert.ToInt32( files.Length /1024); Cursor.Current = Cursors.WaitCursor; WebClient webClient = new WebClient(); string name = openFileDialog.SafeFileName; string nametemp = openFileDialog.SafeFileName; AttachmentBLL AttachmentBLL = new BLL.AttachmentBLL(); if (AttachmentBLL.CheckName(name)) { name = DateTime.Now.ToString("yyyyMMddHHmmss") + name; } string uploadpath = Config.uploadpath; string path = uploadpath + name; string file = openFileDialog.FileName; int len = 1024; byte[] ty = new byte[len]; ty = webClient.UploadFile(path, "post", file);// path=http://i.cnblogs.com/MyHandler.ashx?name="文件名称" Tempclass temp = new Tempclass(); string attachmentpath = Config.attachmentpath; string url = Config.path + name; temp.Id = AttachmentBLL.AddAttachment(url, openFileDialog.SafeFileName,fileLength); temp.Nane = openFileDialog.SafeFileName; infolist.Add(temp); listannex.DataSource = null; listannex.DataSource = infolist; listannex.DisplayMember = "Nane"; listannex.ValueMember = "Id"; listannex.ClearSelected(); filename = filename + nametemp + "; "; Cursor.Current = Cursors.Default; } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
//一般处理处理程序中的代码 /// <summary> /// MyHandler 的摘要说明 /// </summary> public class MyHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Write("Hello World"); HttpPostedFile imgPostFile = context.Request.Files[0]; //一直为null string name = context.Request["name"]; string path = System.Configuration.ConfigurationManager.AppSettings["path"].ToString(); //保存服务器的地址 C:\\dbi\\WebService\\attachment\\ imgPostFile.SaveAs(path + name); } public bool IsReusable { get { return false; } } }
最新文章
- python学习05——字典
- Vsftp精解之安装配置及原理(一)
- 【算法与数据结构】二叉搜索树的Java实现
- JMS + jboss EAP 6.2 示例
- Linux(CentOS)系统下设置nginx开机自启动
- angular懒加载机制 刷新后无法回退解决方案
- java开源网站
- web页面显示折叠树菜单笔记
- Linux应用环境实战05:在Ubuntu 14.10中借用Windows的字体 (转)
- jQuery插件综合应用1
- mfc---拖曳文件
- hcna(华为)_Telnet篇
- Android_support_v4和V7
- Fedora : multilib version problems found
- How to Start a Business in 10 Days
- 自己实现IOC过程
- 【三分钟视频教程】iOS开发中 Xcode 报 apple-o linker 错误的#解决方案#
- B/S架构中常用弹出方法 (转)
- Centos yum安装java jdk1.8
- hdu1181 (变形课)简单地dfs