点击下载 FileUp.zip

主要功能如下

1.把上传的文件转换为字节数组
2.流转化为字节数组
2.上传文件根据FileUpload控件上传
3.把Byte流上传到指定目录并保存为文件

看下面代码吧

/// <summary>
/// 编 码 人:苏飞
/// 联系方式:361983679
/// 更新网站:[url=http://www.sufeinet.com/thread-655-1-1.html]http://www.sufeinet.com/thread-655-1-1.html[/url]
/// </summary>
using System;
using System.IO;
using System.Web;
using System.Web.UI.WebControls;namespace DotNet.Utilities
{/// <summary>/// 文件上传类/// </summary>public class FileUp{public FileUp(){ }/// <summary>/// 转换为字节数组/// </summary>/// <param name="filename">文件名</param>/// <returns>字节数组</returns>public byte[] GetBinaryFile(string filename){if (File.Exists(filename)){FileStream Fsm = null;try{Fsm = File.OpenRead(filename);return this.ConvertStreamToByteBuffer(Fsm);}catch{return new byte[0];}finally{Fsm.Close();}}else{return new byte[0];}}/// <summary>/// 流转化为字节数组/// </summary>/// <param name="theStream">流</param>/// <returns>字节数组</returns>public byte[] ConvertStreamToByteBuffer(System.IO.Stream theStream){int bi;MemoryStream tempStream = new System.IO.MemoryStream();try{while ((bi = theStream.ReadByte()) != -1){tempStream.WriteByte(((byte)bi));}return tempStream.ToArray();}catch{return new byte[0];}finally{tempStream.Close();}}/// <summary>/// 上传文件/// </summary>/// <param name="PosPhotoUpload">控件</param>/// <param name="saveFileName">保存的文件名</param>/// <param name="imagePath">保存的文件路径</param>public string FileSc(FileUpload PosPhotoUpload, string saveFileName, string imagePath){string state = "";if (PosPhotoUpload.HasFile){if (PosPhotoUpload.PostedFile.ContentLength / 1024 < 10240){string MimeType = PosPhotoUpload.PostedFile.ContentType;if (String.Equals(MimeType, "image/gif") || String.Equals(MimeType, "image/pjpeg")){string extFileString = System.IO.Path.GetExtension(PosPhotoUpload.PostedFile.FileName);PosPhotoUpload.PostedFile.SaveAs(HttpContext.Current.Server.MapPath(imagePath));}else{state = "上传文件类型不正确";}}else{state = "上传文件不能大于10M";}}else{state = "没有上传文件";}return state;}/// <summary>/// 上传文件/// </summary>/// <param name="binData">字节数组</param>/// <param name="fileName">文件名</param>/// <param name="fileType">文件类型</param>//-------------------调用----------------------//byte[] by = GetBinaryFile("E:\\Hello.txt");//this.SaveFile(by,"Hello",".txt");//---------------------------------------------public void SaveFile(byte[] binData, string fileName, string fileType){FileStream fileStream = null;MemoryStream m = new MemoryStream(binData);try{string savePath = HttpContext.Current.Server.MapPath("~/File/");if (!Directory.Exists(savePath)){Directory.CreateDirectory(savePath);}string File = savePath + fileName + fileType;fileStream = new FileStream(File, FileMode.Create);m.WriteTo(fileStream);}finally{m.Close();fileStream.Close();}}}
}

转载于:https://www.cnblogs.com/lizeyan/p/3635417.html

[上传下载] C#FileUp文件上传类 (转载)相关推荐

  1. .NET技术 ASP.NET中常用的文件上传下载方法(多文件上传)

    文件的上传下载是我们在实际项目开发过程中经常需要用到的技术,这里给出几种常见的方法,本文主要内容包括: 1.如何解决文件上传大小的限制 2.以文件形式保存到服务器 3.转换成二进制字节流保存到数据库以 ...

  2. java图片上传下载_java web 文件上传与下载

    组件工作流程:WEB服务器request ServletFil eupLoad DiskFileItem Factory代表普通字段的FileItem代表上传文件1FileItem代表上传文件2Fil ...

  3. php实现附件上传下载,PHP实现文件上传与下载

    文件上传原理: 将客户端的文件上传到服务器端,再将服务器端的临时文件移动到指定目录即可. 客户端配置: 1.表单页面 2.表单的发送方式为post 3.添加enctype="multipar ...

  4. 使用Vue+go实现前后端文件的上传下载,csv文件上传下载可直接照搬

    直接上代码,就是固定用法,只需改动接口等一些信息就可以.这里顺带也把token带过去了, vue前端 //页面代码,使用的是vue ant,每个框架都可以实现,详情请看自己使用框架的wiki<a ...

  5. java图片上传下载_Java中文件上传下载 --使用Minio

    Minio模板类: @RequiredArgsConstructor public class MinioTemplate implements InitializingBean { private ...

  6. 文件上传linux服务器,Linux 文件上传Linux服务器

    进入命令行 在图形化桌面出现之前,与Unix系统进行交互的唯一方式就是借助由shell所提供的文本命令行界面(command line interface,CLI).CLI只能接受文本输入,也只能显示 ...

  7. java微信上传本地视频教程_java微信开发之上传下载多媒体文件,java上传下载_PHP教程...

    java微信开发之上传下载多媒体文件,java上传下载 回复图片.音频.视频消息都是需要media_id的,这个是需要将多媒体文件上传到微信服务器才有的. 将多媒体文件上传到微信服务器,以及从微信服务 ...

  8. SSM框架使用Layui文件上传插件实现多文件上传(多文件列表)

    SSM框架使用Layui文件上传插件实现多文件上传(多文件列表) pom.xml文件的配置 想要实现SSM框架实现多文件上传,必要的jar包必须要在pom.xml文件中引入.如下: <!--co ...

  9. 【文件上传漏洞-01】文件上传漏洞概述、防御以及WebShell基础知识补充

    目录 1 文件上传漏洞概述 2 文件上传漏洞防御.绕过.利用 2.1 黑白名单策略 3 WebShell基础知识补充 3.1 WebShell概述 3.2 大马与小马 1 文件上传漏洞概述 概述:文件 ...

最新文章

  1. NOIP普及组第1题(1995-2018)
  2. 特定场景下SQL的优化
  3. 线性表应用之线性表算法设计六大经典案例
  4. java员工请假系统_基于jsp的员工请假管理系统-JavaEE实现员工请假管理系统 - java项目源码...
  5. ARM中C和汇编混合编程及示例
  6. mysql连接池源码_一个JAVA数据库连接池实现源码
  7. Android 创建自己的Camera App
  8. mysql ERROR 1396 (HY000): Operation CREATE USER failed 解决办法
  9. HCS12XEP100 ADC与SCI2的冲突解决 (2011-4-15)
  10. 9种常用的数据分析方法
  11. C#中使用ribbon界面
  12. Amigo---Android hotfix terminator
  13. 云服务器外网访问MySql全程实录
  14. uniapp日历组件
  15. 《经济学通识》:人类会受到“东西不够、生命有限、相互依赖、需要协调”四方面的限制,影响我们的衣食住行
  16. 在Shopee做高客单价产品 需要具备哪些思路?
  17. 总结python中的乱码问题
  18. c语言调用dll实例 结构体传参,Matlab调用Dll,对于自定义结构体数组如何传参? - 程序语言 - 小木虫 - 学术 科研 互动社区...
  19. 阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
  20. 淘宝逛逛,一个0成本适合新手的副业项目

热门文章

  1. 苹果成为了全球对股东最慷慨的公司!
  2. 让自动驾驶汽车“看透”拐角
  3. AI笔记: 数学基础之函数的导数应用及求导公式
  4. java中的Lock锁
  5. 如何理解Condition
  6. c语言使用fft的总结
  7. Blog代码高亮无需插件 - 代码发芽网
  8. CSS层叠样式表-选择器
  9. Unicode控制字符列表:Web项目HTML删除控制字符注入
  10. python聚类分析sklearn_用scikit-learn学习K-Means聚类