Asp.net获取上传图片大小的尺寸!

1.采用流取得图片大小 
Stream stream=file.PostedFile.InputStream;
System.Drawing.Image image=System.Drawing.Image.FromStream(stream);

Image.Width
Image.Height

2.使用文件得到图片大小
System.Drawing.Image image=System.Drawing.Image.FromFile(图片路径)
Image.Width
Image.Height

ASP.NET获取图片的字节大小,可以通过读取上传文件或图像文件流的方式实现。以下是几种常见场景和实现方法: ### 1. 获取上传图片的字节大小 如果用户通过 `IFormFile` 上传了图片,可以使用以下方式获取其字节大小: ```csharp public long GetImageByteSize(IFormFile file) { using (var memoryStream = new MemoryStream()) { file.CopyTo(memoryStream); return memoryStream.Length; } } ``` 此方法将文件内容复制到内存流中,并返回流的长度(即字节大小)[^2]。 ### 2. 从本地文件系统加载图片并获取字节大小 如果图片存储在服务器的文件系统中,可以使用 `System.IO.File` 类读取文件并获取其大小: ```csharp public long GetImageByteSize(string filePath) { byte[] fileBytes = File.ReadAllBytes(filePath); return fileBytes.Length; } ``` 该方法直接读取文件为字节数组,并返回数组长度,适用于已知文件路径的情况[^3]。 ### 3. 从 `Bitmap` 对象获取字节大小 如果图片是通过 `System.Drawing.Bitmap` 对象生成的,例如动态生成的二维码图像,可以通过将其转换为字节数组来获取大小: ```csharp public long GetImageByteSize(Bitmap bitmap) { using (var memoryStream = new MemoryStream()) { bitmap.Save(memoryStream, ImageFormat.Png); return memoryStream.Length; } } ``` 该方法将 `Bitmap` 对象保存到内存流中,并返回流的长度[^3]。 ### 4. 使用 `HttpPostedFileBase` 获取上传图片的字节大小(ASP.NET MVC) 在传统的 ASP.NET MVC 应用中,如果使用 `HttpPostedFileBase` 接收上传文件,也可以如下获取字节大小: ```csharp public long GetImageByteSize(HttpPostedFileBase file) { using (var binaryReader = new BinaryReader(file.InputStream)) { byte[] fileBytes = binaryReader.ReadBytes(file.ContentLength); return fileBytes.Length; } } ``` 此方法通过二进制读取器读取输入流,获取完整的字节数据并返回其长度[^1]。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值