C# 获取Image图片格式
private void button1_Click_1(object sender, EventArgs e)
{
string path = Application.StartupPath;
using (FileStream file = new FileStream(txtpath.Text, FileMode.Open))
{
Image img = Image.FromStream(file);
string format;
System.Drawing.Imaging.ImageFormat _img_format = GetImageFormat(img, out format);
if (_img_format != null)
{
img.Save(path + @"\" + Guid.NewGuid().ToString() + format, _img_format);
MessageBox.Show("ok");
}
} } /// <summary>
/// 获取Image图片格式
/// </summary>
/// <param name="file"></param>
/// <param name="format"></param>
/// <returns></returns>
private System.Drawing.Imaging.ImageFormat GetImageFormat(FileStream file, out string format)
{
byte[] sb = new byte[]; //这次读取的就是直接0-1的位置长度了.
file.Read(sb, , sb.Length);
//根据文件头判断
string strFlag = sb[].ToString() + sb[].ToString();
//察看格式类型
switch (strFlag)
{
//JPG格式
case"":
format = ".jpg";
return System.Drawing.Imaging.ImageFormat.Jpeg;
//GIF格式
case"":
format = ".gif";
return System.Drawing.Imaging.ImageFormat.Gif;
//BMP格式
case"":
format = ".bmp";
return System.Drawing.Imaging.ImageFormat.Bmp;
//PNG格式
case"":
format = ".png";
return System.Drawing.Imaging.ImageFormat.Png;
//其他格式
default:
format = string.Empty;
return null;
}
} /// <summary>
/// 获取Image图片格式
/// </summary>
/// <param name="_img"></param>
/// <param name="format"></param>
/// <returns></returns>
private System.Drawing.Imaging.ImageFormat GetImageFormat(Image _img,out string format)
{
if (_img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Jpeg))
{
format = ".jpg";
return System.Drawing.Imaging.ImageFormat.Jpeg;
}
if (_img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Gif))
{
format = ".gif";
return System.Drawing.Imaging.ImageFormat.Gif;
}
if (_img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Png))
{
format = ".png";
return System.Drawing.Imaging.ImageFormat.Png;
}
if (_img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Bmp))
{
format = ".bmp";
return System.Drawing.Imaging.ImageFormat.Bmp;
}
format = string.Empty;
return null;
}
C# 获取Image图片格式的更多相关文章
- iOS获取图片格式
我们系统使用的一般文件格式有png.jpg.jpeg.GIF.TIFF 等格式: 图片是我们开发过程中最常见的东西,一般每个公司都会有自己的文件服务器,客户端人员都会从文件服务器中获取相关的图片信息: ...
- PPM图片格式及其C读写代码
PPM图像格式介绍 PPM图像格式是由Jef Poskanzer 大叔,在我出生那一年,也就是1991年所创造的,碰巧的是PPM也是天蝎座. PPM(Portable Pixmap Format)还有 ...
- android 通过uri获取bitmap图片并压缩
很多人在调用图库选择图片时会在onActivityResult中用Media.getBitmap来获取返回的图片,如下: Uri mImageCaptureUri = data.getData(); ...
- JS验证图片格式和大小并预览
用于上传图片的js验证: <%@ page language="java" contentType="text/html; charset=UTF-8"p ...
- BMP图片格式
BMP图片 BMP采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP文件所占用的空间很大.BMP文件的图像深度可选lbit.4bit.8bit及24bit和32bit.BMP文 ...
- 用Delphi直接获取bmp图片的像素
用Delphi直接获取bmp图片的像素,并存储显示出.(此像素主要用在LED上显示).希望高手能给出代码啊!! function getImagePixels(f: string): Integer; ...
- ASP图片格式与base64数据互转方法
ASP图片格式与base64数据相互转换的方法,经常用于处理表单中存储有base64字符串格式的图片. 获取到base64数据,转换成图片 <% Subfolder=year(now)& ...
- Android应用--简、美音乐播放器获取专辑图片(自定义列表适配器)
Android应用--简.美音乐播放器获取专辑图片(自定义列表适配器) 2013年7月3日简.美音乐播放器开发 第二阶段已增加功能: 1.歌词滚动显示 2.来电监听 3.音量控制 4.左右滑动切换歌词 ...
- 获取bing图片并自动设置为电脑桌面背景(C++完整开源程序)
众所周知,bing搜索网站首页每日会更新一张图片,张张漂亮(额,也有一些不合我口味的),特别适合用来做电脑壁纸. 我们想要将bing网站背景图片设置为电脑桌面背景的通常做法是: 上网,搜索bing 找 ...
随机推荐
- Mac系统安装Lua
1.下载最新版的lua-5.2.3 请点击,然后解压 2. 运行“终端”进入到该文件夹下,主要是cd [文件夹名] 3.在“终端”输入 make macosx (回车) 4.在“终端”输入 ...
- Silverlight跨域访问wcf
添加文件名为“clientaccesspolicy.xml”的文件 内容: <?xml version="1.0" encoding="utf-8"?&g ...
- python 正则表达式 -- IP地址验证
p = re.compile("^((?:(2[0-4]\d)|(25[0-5])|([01]?\d\d?))\.){3}(?:(2[0-4]\d)|(255[0-5])|([01]?\d\ ...
- 基于jQuery鼠标点击弹出登陆框效果
基于jQuery鼠标点击弹出登陆框效果.这是一款扁平样式风格的jQuery弹出层登陆框特效.效果图如下: 在线预览 源码下载 实现的代码. html代码: <input type=" ...
- 基于jQuery点击图像居中放大插件Zoom
分享一款基于jQuery点击图像居中放大插件Zoom是一款放大的时候会从原图像的位置以动画方式放大到画面中间,支持点击图像或者按ESC键来关闭效果.效果图如下: 在线预览 源码下载 实现的代码. ...
- [emacs] org-mode的一些小技巧
Table of Contents 1 快速输入 #+BEGIN_SRC … #+END_SRC 2 代码按语法高亮 3 导出成HTML时的一些问题和技巧 3.1 生成目录表 3.2 为每个分节的标题 ...
- Spring boot 报错 Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean.
在实际开发中修改别人的代码,发现了这个报错,后来发现是因为pom.xml里面 只要将注释掉的部分注释掉就好了.
- spidev 驱动 probe 获取 dts 节点参数
一. 尝试在 spi 驱动里边读取 设备树里面 节点的信息 // dts 里面的参数配置 503 &spi0 { 504 status = "okay"; 505 pinc ...
- IDEA快捷键整理(最详细的)
IDEA快捷键 Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭 ...
- jquery笔记一——小问题+小技巧
1.table行单击选中radio(传说中input[type=radio]比input:radio要快) <tr class="rowSelect"> <td& ...