2009-11-09 22:44:09 将一个文件夹中所有的bmp文件转化成同名的jpg文件 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; using System.Text.RegularExpressions;//正则表达式Regex在的命名空间 namespace 图片处理 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { //含子文件夹的图像转换 folderBrowserDialog1.ShowDialog(); string strPath = folderBrowserDialog1.SelectedPath; //string strPath = @"d:/pic"; DirectoryInfo path = new DirectoryInfo(strPath); FileInfo[] files = path.GetFiles("*.bmp", SearchOption.AllDirectories); foreach (FileInfo item in files) { Image img = Image.FromFile(item.FullName); string strNewFileName = Regex.Replace(item.FullName, @"/.bmp$", ".jpg", RegexOptions.IgnoreCase); img.Save(strNewFileName, System.Drawing.Imaging.ImageFormat.Jpeg); img.Dispose(); } } private void button2_Click(object sender, EventArgs e) { //指定文件夹的图像转换 folderBrowserDialog1.ShowDialog(); string strPath = folderBrowserDialog1.SelectedPath; DirectoryInfo Dir=new DirectoryInfo(strPath); foreach(FileInfo f in Dir.GetFiles("*.*")) { Image img=ReturnPhoto(f.FullName); string strNewFileName = Regex.Replace(f.FullName, @"/.bmp$", ".jpg", RegexOptions.IgnoreCase); img.Save(strNewFileName, System.Drawing.Imaging.ImageFormat.Jpeg); img.Dispose(); } } private Image ReturnPhoto(string bmpFileName) { System.IO.FileStream stream ; stream=File.OpenRead(bmpFileName); Bitmap bmp = new Bitmap(stream); System.Drawing.Image image = bmp; System.Drawing.Image newImage = image.GetThumbnailImage(bmp.Width, bmp.Height, null, new IntPtr()); Graphics g=Graphics.FromImage(newImage); g.DrawImage(newImage,0,0, newImage.Width, newImage.Height); g.Dispose(); stream.Close(); return newImage; } } }