判断目录下的文件是否为图片
ASP.NET MVC应用程序的UploadFiles目录,是存放用户上传的文件,当然包括图片。现在开发的要求是,显示所有用户上传图片作为列表,呈现给用户。
如果直接去显示,也许某些文件不是图片文件。还有可能是用户上传时,更改了扩展名。真实不是图片的,改为了图片相关的扩展名。即是说,现在要做的是过滤出真正的图片文件出来。
在应用程序的Utilities目录中,创建一个ImageUtility的类别:
有两个函数,第一个public static string Base64String(string virtualPath):
有一个参数,需要传入虚拟路径。
#13使用Server.MapPath()把虚拟路径处理为物理路径。
#14读取文件流(FileStream)
#15把文件流处理为byte阵列。
#17转换为Convert.ToBase64String()字符串。
第二个函数public static bool IsImage(string base64String):
#22把参数传入的Base64String字符串,转换为byte阵列。
#24行,把byte[]转换为内存流(MemoryStream)
#28行是核心判断是否图片代码。
两个函数,一经每行解读,可以整合为一个函数:
整合后的函数,名改为IsImage1(),此函数可算是优化,少了两次byte阵列转换。
控制器,建立两个Action:
在JsonResult Verify()中,那个红圈 comment的两行(#56,#57)代码。
是使用了开始写的两个函数。
为了测试,在应用程序的UploadFiles目录中,放两个文件,一个图片,另一个是文本文件,但它的扩展名被改为了.jpg。
创建一个视图,来检验上面写的函数:
稍后Insus.NET在演示过程中,手动改变控制制的文件路径:
判断目录下的文件是否为图片相关推荐
- linux shell判断当前目录下的文件或目录
linux shell判断当前目录下的文件或目录 #!bin/sh for file in ./* doif test -f $filethenecho $file 是文件elseecho $file ...
- java获得src文件夹下的图片和 获得resource目录下的文件
java获得src文件夹下的图片和 获得resource目录下的文件 1 获得src文件夹下的图片 文件位置 获得url代码 URL url= getClass().getClassLoader(). ...
- pyhton 读取目录下所有文件夹下的文件(指定文件)
前言 1.有的时候比如我们操作错了,将一个文件夹里的.png图片都弄到了不同的文件夹中,现在想还原,如果一个个手工选择剪切,恐怕不是一个好办法. 2.有的时候,想把某个目录下的所有文件夹中的jpg格式 ...
- 监控web站点目录下所有文件是否被恶意篡改
监控web站点目录下所有文件是否被恶意篡改,(文件内容被改了)如果有的就打印改动的文件名 定时任务:每三分钟执行一次监测一次 文件被篡改的特征: 大小可能会变化(为什么说可能呢,如果把里面的值1改为2 ...
- win32 API 遍历一个目录下的文件
代码: #include <windows.h>DWORD EnumerateFileInDirectory(LPWSTR );int APIENTRY WinMain(HINSTANCE ...
- linux把目录下的文件设置属性为rx,LINUX的文件属性与目录配置
LINUX的文件属性与目录配置 发布时间:2008-03-20 10:28:46来源:红联作者:cnbtoo -rwxrwxrwx 1 root root 293 Oct 19 21:24 test ...
- 通过Python实现某个目录下所有文件(包含子目录中的文件)的列出
方法一 # 修改工作目录 import os os.chdir(r'C:\Users\Hider\Desktop')# 定义函数 def list_all_files(rootdir):import ...
- Linux和Windows的遍历目录下所有文件的方法对比
首先两者读取所有文件的方法都是采用迭代的方式,首先用函数A的返回值判断目录下是否有文件,然后返回值合法则在循环中用函数B直到函数B的返回值不合法为止.最后用函数C释放资源. 1.打开目录 #inclu ...
- 【Java基础】递归输出目录下所有文件路径
递归输出目录下所有文件路径 import java.io.File;public class FileTest {public static void main(String[] args) {// ...
最新文章
- python中实数怎么表示_如何用实数的模来计算pow()?
- RedHat系统常用的日志文件详解三
- Java对存储过程的调用方法 --转载
- 【Oracle 集群】Linux下Oracle RAC集群搭建之基本测试与使用(九)
- windows。forms.timer设置第一次不等待_防火卷帘设置的场景不同下降的要求有哪些区别?...
- Android之创建选项菜单
- struts的异常处理
- 禁止视频在手机移动端页面中全屏播放代码范例
- 软件项目管理-会议记录模板
- c语言经典程序技能高考,计算机类技能高考介绍
- html怎么设置字体的透明度,CSS字体透明度怎么设置?
- linux设备驱动中的阻塞与非阻塞(二)
- 如何编写Word文档 多级编号
- 漏洞修复:Insecure Transport: HSTS not Set
- Python基础刷题,期末不挂科~~~(已完结)
- 小程序用哪个服务器好,小程序用什么服务器好
- 成功焊接BGA芯片技巧
- 从零教你用抖音赚钱——吸粉变现技巧
- Pyinstaller 详解多种打包过程(去坑,填坑)。
- 机器学习_深度学习毕设题目汇总——肿瘤