.Net Core WebApi 控制器自动创建文件夹上传图片
/// <summary>
/// 异步图片或文件上传
/// </summary>
/// <param name="formFile"></param>
/// <returns></returns>
[HttpPost]
public async Task<JsonResult> UploadPic(IFormFile formFile)
{
//定义文件夹路径
var FolderPath = $"/UploadFile/{DateTime.Now.ToString("yyyyMMdd")}"; //上传文件重命名 获取上传文件的扩展名
var FilePath = $"/{DateTime.Now.ToString("yyyyMMddHHmmssfff")}{Path.GetExtension(formFile.FileName)}"; //如果 path 指向现有目录,则为 true;如果该目录不存在或者在尝试确定指定目录是否存在时出错,则为 false。
if (!Directory.Exists($"{env.WebRootPath}{FolderPath}"))
//创建新的指定目录
Directory.CreateDirectory($"{env.WebRootPath}{FolderPath}"); //using释放非托管资源 {env.WebRootPath}{FolderPath}{FilePath} 文件路径+文件名称
//FileMode 指定操作系统打开文件的方式
//OpenOrCreate指定操作系统应打开文件(如果文件存在);否则,应创建新文件
using (FileStream fs = new FileStream($"{env.WebRootPath}{FolderPath}{FilePath}", FileMode.OpenOrCreate))
{
//异步获取文件内容
await formFile.CopyToAsync(fs);
} //返回图片的文件夹路径+名称
return new JsonResult(new
{
FilePath = $"{FolderPath}{FilePath}"
});
}
.Net Core WebApi 控制器自动创建文件夹上传图片的更多相关文章
- C# 创建文件时,文件夹不存在,如何自动创建文件夹
c# 创建文件时怎么创建文件夹?strhtml=......StreamWriter sw=new StreamWriter("D:/test/1.aspx",false);sw. ...
- mkdirs自动创建文件夹
//保存路径 如file路径是E:\filer\a.jpg File toSaveFile=new File("filePath"); if(toSaveFile!=null){ ...
- Python中根据时间自动创建文件夹
导语 电脑桌面文件太多查找起来比较花费时间,并且凌乱的电脑桌面也会影响工作心情,于是利用python根据时间自动建立当日文件夹,这样就可以把桌面上文件按时间进行存放. 代码实现 # _*_codi ...
- python——在文件存放路径下自动创建文件夹!
1.a.py文件存放的路径下为(D:\Auto\eclipse\workspace\Testhtml\Test) 2.通过os.getcwd()获取的路径为:D:\Auto\eclipse\works ...
- bat自动创建文件夹(以当前时间命名)
先cmd中查看当前的日期和时间: @echo off color 0a set dt=%date%%time% echo %dt%pause 1.使用截取进行命名(时间为12小时制时命名会出现空格,不 ...
- bat如何实现自动创建文件夹(以当前时间命名)
先比较直接的查看当前的日期和时间:(或者cmd中直接输入date,time查看) @echo off color 0a set dt=%date%%time% echo %dt% pause 1.使用 ...
- webApi上传服务,可重命名,可创建文件夹
webApi上传服务,根据FileName重命名,根据Path创建文件夹 /// <summary> /// 上传文件 /// </summary> /// <retur ...
- Idea创建文件夹自动合成一个
在idea中创建文件夹时,它们总是自动合成一个,如下图: 文件夹自动折叠真的很影响效率,可能会引发一些不经意的失误 解决方法: 取消这个地方的勾选 这样就可以正常创建文件夹了
- [sharepoint]rest api文档库文件上传,下载,拷贝,剪切,删除文件,创建文件夹,修改文件夹属性,删除文件夹,获取文档列表
写在前面 最近对文档库的知识点进行了整理,也就有了这篇文章,当时查找这些接口,并用在实践中,确实废了一些功夫,也为了让更多的人走更少的弯路. 系列文章 sharepoint环境安装过程中几点需要注意的 ...
- Java创建文件夹
import java.io.File; public class Mkdirs { public static void main(String[] args) { /** *创建文件夹,如果路径不 ...
随机推荐
- 多个module的verilog文件分割为多个文件
python 分割含有多个module的verilog文件,按照module名来命名文件 import re # 读取 Verilog 文件 with open('test.v', 'r') as f ...
- No.3.1
JavaScript是什么? JavaScript是一种运行在客户端(浏览器)的编程语言,实现人机交互效果. 作用:网页特效(监听用户的一些行为让网页作出对应的反馈) 表单验证(针对表单数据的 ...
- css 属性选择器需要加引号吗
平常我们是不加引号的: HTML: <div data-a='aq1'>99</div> CSS: [data-a=aq1]{ color: #f00; } 想加上也行 ...
- Typopa软件和计算机的基本内容
Typopa软件和计算机的基本内容 TYPORA软件markdown的运用 输入#按空格键输入文本就形成了一个标题(几个#就是几级标题最高六级)或者ctrl加数字数字几就是几级标题. 输入*加空格就形 ...
- 关于fetch请求中非表单模式(form)转化为form格式请求成功问题
首先证实一下接口请求可以成功,postman掉通 2.证实接口可以掉通之后,来发现问题 发现根本不是form表单格式3.去操作实现form表单格式 发现form格式貌似已经转换,但是请求还是不对 最后 ...
- (pymssql._pymssql.OperationalError) (8152, b'String or binary data would be truncated.DB-Lib error message 20 018, severity 16:\nGeneral SQL Server error: Check messages from the SQL Server\n')
(pymssql._pymssql.OperationalError) (8152, b'String or binary data would be truncated.DB-Lib error m ...
- SpringBoot 启动报循环依赖问题
问题现象 Caused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating b ...
- NTP网络时间服务器(时间同步服务器)产品介绍及技术研究分析
NTP网络时间服务器(时间同步服务器)产品介绍及技术研究分析 目前,市场上的NTP网络时间服务器鱼龙混杂,厂家良莠不齐,对此选择一家有实力的厂家及性价比高的NTP网络时间服务器厂家显得尤其重要. NT ...
- QT中文显示乱码
1. 环境:VS2015+QT5.10 解决:在头文件中声明 #pragma execution_character_set("utf-8") 2. QT5.10中控件显示中文 ...
- java-javaSE-泛型和反射
泛型 什么是泛型 泛型,即"参数化类型".顾名思义,就是将类型参数化,然后在使用/调用时传入具体的类型(类型实参). 为什么使用泛型 泛型提高程序操作的可读性和安全性. 例如集合类 ...