tnblog
首页
视频
资源
登录

.NET Core Base64上传图片

7918人阅读 2020/4/10 16:06 总访问:297523 评论:0 收藏:1 手机
分类: .NET Core
  1. 通用的图片上传工具类,直接上代码吧
  2. 图片转Base64可以看看剑哥
  3. 借鉴了剑哥的一些思路 https://www.tnblog.net/aojiancc2/article/details/2622
  4.         /// <summary>
  5.         /// 将base64转成图片
  6.         /// </summary>
  7.         /// <param name="Strbase64">base64数据</param>  
  8.         /// <param name="Fileurl">文件存放路径存(/UploadFiles/模块)</param>
  9.         /// <param name="FileSuffix">图片后缀(不存在则取base64类型后缀,如果base64头部不存在data:image/jpg(类型)返回空)</param> 
  10.         /// <param name="Bol">是否默认盘(Fileurl否必填盘)</param>
  11.         /// <param name="GuridFileName">图片名称(默认GUID生成)</param> 
  12.         /// <returns></returns>
  13.         /// D:\Code\WebManagers\Web\Ayhl\API\VideoManageApi\UploadFiles\
  14.         public static string SaveImage(string Strbase64, string Fileurl, string FileSuffix, bool Bol = falsestring GuridFileName = "")
  15.         {
  16.             try
  17.             {
  18.                 if (GuridFileName == null || string.IsNullOrEmpty(GuridFileName))
  19.                 {
  20.                     //使用GUID创建文件名称
  21.                     GuridFileName = Guid.NewGuid().ToString().Replace("-""");
  22.                     //防止Guid重复加上时间秒
  23.                     GuridFileName += DateTime.Now.Second;
  24.                 }
  25.                 //时间生成每日文件夹
  26.                 string FileName = DateTime.Now.ToString("yyyy-MM-dd");
  27.                 if (FileSuffix == null || string.IsNullOrEmpty(FileSuffix))
  28.                 {
  29.                     if (Strbase64 != null && !string.IsNullOrEmpty(Strbase64))
  30.                     {
  31.                         var bte = Strbase64.Split("base64");
  32.                         if (bte.Length > 1)
  33.                         {
  34.                             try
  35.                             {
  36.                                 FileSuffix = bte[0].Split('/')[1].Replace(";""");
  37.                             }
  38.                             catch (Exception ex)
  39.                             {
  40.                                 return "";
  41.                             }
  42.                         }
  43.                         else
  44.                         {
  45.                             return "";
  46.                         }
  47.                     }
  48.                     else
  49.                     {
  50.                         return "";
  51.                     }
  52.                 }
  53.                 //if (Fileurl == null || string.IsNullOrEmpty(Fileurl))
  54.                 //{
  55.                 //    Fileurl = $"//UploadFiles//VideoImages//{FileName}//{GuridFileName}.{FileSuffix}";
  56.                 //}
  57.                 if (Fileurl != null && !string.IsNullOrEmpty(Fileurl))
  58.                 {
  59.                     if (Fileurl.Split('.').Length < 2)
  60.                     {
  61.                         Fileurl += "//" + FileName + "//" + GuridFileName + "." + FileSuffix;
  62.                     }
  63.                 }
  64.                 string path = "";
  65.                 //是默认工作盘
  66.                 if (Bol)
  67.                 {
  68.                     //获取应用程序的当前工作目录。 Directory.GetCurrentDirectory()
  69.                     path = Directory.GetCurrentDirectory() + Fileurl;
  70.                 }
  71.                 //返回指定路径字符串的目录信息。Path.GetDirectoryName
  72.                 string filepath = Path.GetDirectoryName(path);
  73.                 // 如果不存在就创建file文件夹
  74.                 if (!Directory.Exists(filepath))
  75.                 {
  76.                     if (filepath != null) Directory.CreateDirectory(filepath);
  77.                 }
  78.                 //使用正则表达式把所有类型的图片去掉前缀
  79.                 string base64img = Regex.Replace(Strbase64, "data:image/.*;base64,""");
  80.                 byte[] photoBytes = Convert.FromBase64String(base64img);
  81.                 //创建一个新文件,将指定的字节数组写入该文件,然后关闭文件。如果目标文件已存在,则将覆盖它。
  82.                 File.WriteAllBytes(path, photoBytes);
  83.                 return Fileurl;
  84.             }
  85.             catch (Exception ex)
  86.             {
  87.                 return "";
  88.             }
  89.         }
  90.         
  91.     有疑问留言哦


评价

ASP.net简单上传图片

图片上传的注意事项1:提交方式必须是post2:修改一下entype类型让他支持文件3:文件选择框必须要有一个名字publicvoidUpLoa...

.net core上传图片,文件。webapi 上传图片文件

上传图片的前台代码都完全一样,直接来贴后台的代码吧publicActionResultUploadImage(List&lt;IFormFile&gt;upfile) { ...

net core上传图片到七牛云

我们项目的静态资源如果想要获得加速就可以把图片哇,js,css这些静态资源放到cdn上,提高我们站点的访问速度。这里我们使用n...

ajaxSubmit异步上传图片(嘘,外面都是假的)

引用代码&lt;scriptsrc=&quot;/Scripts/jquery.form.js&quot;&gt;&lt;/script&gt;js就在旁边img链接中,只不过大小为0x0,...

AJAX调用webapi上传图片或文件。设置token,设置Authorization Bearer

AJAX调用webapi上传图片或文件,并返回刚上传的文件名。废话不多说直接贴代码吧html相关:&lt;!DOCTYPEhtml&gt; &lt;html&...

.net上传图片到七牛云

传送门:net core上传图片到七牛云地址:http://www.tnblog.net/aojiancc2/article/details/2441c# sdk地址:https://devel...

.net base64上传图片

前台&lt;div&gt; &lt;inputtype=&quot;file&quot;onchange=&quot;selectImage(this.files)&quot;accept=&quot;&quot;&gt; ...

net core base64上传图片

前台html:&lt;div&gt; &lt;inputtype=&quot;file&quot;onchange=&quot;selectImage(this.files)&quot;accept=&quot;&quot;...

Layui插件上传图片具体步奏以及获取图片地址

注意事项: (1)在使用插件之前需要引入该插件文件包不可分开使用。 (2)在运行过程中会出现报一个错误(上传图片异常等等...

微信上传图片和视频

前言Happy Birthday To You! ChenTingXian人的一生会遇到很多人,但心里能够一直有你的人却很少,承蒙时光不弃,让我遇到啦...

微信公众号上传图片,视频素材

一天休息,闲来无事,丈夫这是就问妻子说:“亲爱的老婆,你知道鱼为什么是哑巴吗?”,这是妻子也感到疑惑了,为什么鱼是...

.net core百度编辑器上传图片配置

.net core百度编辑器上传图片配置和.net framework还是有一点点区别publicActionResultUploadImage(List&lt;IFormFile&gt;f...

.net core gRPC base64上传图片文件

客户端前台&lt;div&gt; &lt;inputtype=&quot;file&quot;onchange=&quot;selectImage(this.files)&quot;accept=&quot;&quot...

.net core gRPC 客户端流式上传图片,文件。gRPC文件分段传输

html前台,完全一样:&lt;formmethod=&quot;post&quot;action=&quot;/home/UpLoadImgStream&quot;enctype=&quot;multipart/f...
若人生只如初见,愿还是相遇的那个下午,阳光明媚转身一笑便如春暖花开
排名
16
文章
53
粉丝
7
评论
13
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术
你可以期待太阳从东方升起,而风却随心所欲地从四面八方吹来。