1 public static bool IsAllowedExtension(byte[] imgArray, FileExtension[] fileEx)
2 {
3 MemoryStream ms = new MemoryStream(imgArray);
4 System.IO.BinaryReader br = new System.IO.BinaryReader(ms);
5 string fileclass = "";
6 byte buffer;
7 try
8 {
9 buffer = br.ReadByte();
10 fileclass = buffer.ToString();
11 buffer = br.ReadByte();
12 fileclass += buffer.ToString();
13 }
14 catch
15 {
16 }
17 br.Close();
18 ms.Close();
19 foreach (FileExtension fe in fileEx)
20 {
21 if (Int32.Parse(fileclass) == (int)fe)
22 return true;
23 }
24 return false;
25 }
26 public enum FileExtension
27 {
28 JPG = 255216,
29 GIF = 7173,
30 PNG = 13780,
31 SWF = 6787,
32 RAR = 8297,
33 ZIP = 8075,
34 _7Z = 55122,
35 XLS = 208207,
36 XLSX = 8075,
37 bmp = 6677
38 }
39
40 调用
41 //判断下是否为gif
42 if (IsAllowedExtension(buffer, new FileExtension[] { FileExtension.GIF,FileExtension.PNG,FileExtension.bmp }))
43 {
44 using (MemoryStream newstream = new MemoryStream())
45 {
46 bitmap.Save(newstream, System.Drawing.Imaging.ImageFormat.Jpeg);
47 //
48 using (Bitmap newbitmap = new Bitmap(newstream, true))
49 {
50 }
51 }
52 }