xingd.net

.net related techonology

导航

如何设置Image保存时的文件扩展名

Posted on 2005-03-08 15:33  xingd  阅读(3487)  评论(4编辑  收藏  举报
假如有一个从Stream构造的Image,那么在保存成文件时应该使用什么样的扩展名呢?

在IE中使用图片中,图片格式是从图片内容中析取出来的,与扩展名无关,但是,保存Image时不指定扩展名,想起来都有点不爽。

目前我使用的方法是根据Image.RawFormat与ImageFormat提供的静态属性进行Guid比较,以确定Image的格式,然后返回相应的扩展名,代码如下:
using (Image image = Image.FromStream(stream))
{
    Guid guid 
= image.RawFormat.Guid;
    
string ext = ".tmp";

    
if (guid == ImageFormat.Bmp.Guid)
    
{
        ext 
= ".bmp";
    }

    
else if (guid == ImageFormat.Gif.Guid)
    
{
        ext 
= ".gif";
    }

    
else if (guid == ImageFormat.Jpeg.Guid)
    
{
        ext 
= ".jpg";
    }


    image.Save(file 
+ ext);
}



不知道还有没有更好的方法。