向服务器上传文件
1.FastReport换行配置2..net前端传字符串到后台接口不完整3.数据库查询字段前N个字符4.I标签禁用触发事件5.Sql时间格式化6.从数组中,直接获取所需数据7.Sql 截取字符串方式8.SQL日期格式9.定义了鼠标指针放在一个元素边界范围内时所用的光标形状10.VsCode打包11.WCF12.MD5加密13.WCF服务支持http14.获取计算机信息15.文件复制/解压
16.向服务器上传文件
17.向服务器更新文件18..net 在config中取值19.在DevExpress GridControl的一列中显示图片20.定时timer21.直接在对象数组中找数据22.uni-app 请求接口报错request:fail abort statusCode:-123..net接口出现405跨域错误24.css样式变量25.sql 多列合并成一个字符串26.Http404.3 MIME映射问题27.动态添加RibbonPageGroup/NavBarGroup28.Sql/MySql 连接配置29.动态添加XtraPrivotGrid/XtraGrid30.IIS错误50031.dropDownButton使用方法32.xml文件创建/写入33.服务器无法访问题34.DEV控件加载到VS工具箱中35.签名时出错: 未在路径 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin36.旋转弧度计算方式JS37.微信小程序上传图片报错:uploadFile:fail url not in domain list38..NET混合开发解决方案WebView2控件的导航事件39.uniapp项目打包为桌面应用的方法步骤40.WCF 接收我服务的 HTTP 响应时发生错误41.vscode之vue文件代码格式化代码无效解决办法42.Vue框架规则类错误43.【vue】ElementUI el-table自适应列宽实现44.uni-app electron打包成exe应用45.HTTP Error 503. The service is unavailable.46.接口对接Get/Post47.Guid随机生成36位数48.Timer计时器实现定时49.HTTP 请求 (Request)50.接口开发笔记-WebApi51.ASP.NET 自定义控件52.uni-app 版本更新53.图片转二进制的相互转化54.uni-app 设置多语言切换uni-i18n插件55.uniapp 在 Android Studio 模拟器中运行项目56.前端css中animation(动画)的使用57.Android 模拟机配置内网58.前端圆形倒球体环绕/波纹动态图//--------------------向服务器上传文件------
//浏览选择需要上传的文件 private static bool Unzip(string address, string filezip) { //创建对话框 OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "请选择上传的文件"; //规定文件类型 ofd.Filter = "zip(*.zip)|*.zip;"; //判断是否选择文件 if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK) { //获得文件的完整路径(包括名字后后缀) FilePath = ofd.FileName; //计算文件KB大小.字节/1024 txtFileSize.Text = Math.Round(new System.IO.FileInfo(FilePath).Length / 1024.0, 2).ToString(); } }
//上传文件
private void UploadFileIng() { //截止文件名称 string fileName = FilePath.Substring( FilePath.LastIndexOf("\\") + 1); //文件上传 System.IO.FileInfo fileInfoIO = new System.IO.FileInfo(FilePath); FileStream fs = File.OpenRead(fileInfoIO.FullName); //获取文件MD5值 try { int maxSiz = 1024 * 100; // 根据文件名获取服务器上的文件 CustomFileInfo file = client.GetFileInfo(fileInfoIO.Name); if (file == null) { file = new CustomFileInfo(); file.OffSet = 0; } file.Name = fileInfoIO.Name; file.Length = fs.Length; fs.Close(); fs.Dispose(); if (file.Length == file.OffSet) //如果文件的长度等于文件的偏移量,说明文件已经上传完成 { MessageBox.Show("该文件已存在"); } else { //while (file.Length != file.OffSet) //{ file.SendByte = new byte[file.Length - file.OffSet <= maxSiz ? file.Length - file.OffSet : maxSiz]; //设置传递的数据的大小 file = client.UpLoadFileInfo(file, sysConfig); //上传 // //int percent = (int)((double)file.OffSet / (double)((long)file.Length)) * 100; // int percent = (int)(((double)file.OffSet / (double)((long)file.Length)) * 100); //} } } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { client.Close(); client.Abort(); } }
//客户端请求配置ServerClient
public CustomFileInfo UpLoadFileInfo(CustomFileInfo fileInfo,SysConfig sysconfig) { return this.Channel.UpLoadFileInfo(fileInfo, sysconfig); }
//实现接口 Server
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | public CustomFileInfo UpLoadFileInfo(CustomFileInfo fileInfo,SysConfig sysconfig) { // 获取服务器文件上传路径 string fileUpLoadPath = System.Web.HttpContext.Current.Server.MapPath(sysconfig.addressFile); // 如需指定新的文件夹,需要进行创建操作。 if (!Directory.Exists(fileUpLoadPath)) { Directory.CreateDirectory(fileUpLoadPath); } // 创建FileStream对象 FileStream fs = new FileStream(fileUpLoadPath + fileInfo.Name, FileMode.OpenOrCreate); long offSet = fileInfo.OffSet; // 使用提供的流创建BinaryWriter对象 var binaryWriter = new BinaryWriter(fs, Encoding.UTF8); binaryWriter.Seek(( int )offSet, SeekOrigin.Begin); binaryWriter.Write(fileInfo.SendByte); fileInfo.OffSet = fs.Length; fileInfo.SendByte = null ; fileInfo.path = fileUpLoadPath ; binaryWriter.Close(); fs.Close(); return fileInfo; } public CustomFileInfo GetFileInfo( string fileName) { string filePath = System.Web.Hosting.HostingEnvironment.MapPath( "~/UpLoadFile/" ) + fileName; if (File.Exists(filePath)) { var fs = new FileStream(filePath, FileMode.OpenOrCreate); CustomFileInfo fileInfo = new CustomFileInfo { Name = fileName, OffSet = fs.Length, }; fs.Close(); return fileInfo; } return null ; } |
//定有接口 IServer
1 2 3 4 | [OperationContract] CustomFileInfo UpLoadFileInfo(CustomFileInfo fileInfo, SysConfig sysConfig); [OperationContract] CustomFileInfo GetFileInfo( string fileName); |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂