方法一:用image對象判斷是否為圖片
1 /// 判斷文件是否為圖片 2 /// </summary> 3 /// <param name="path">文件的完整路徑</param> 4 /// <returns>返回結果</returns> 5 public Boolean IsImage(string path) 6 { 7 try 8 { 9 System.Drawing.Image img = System.Drawing.Image.FromFile(path); 10 return true; 11 } 12 catch (Exception e) 13 { 14 return false; 15 } 16 }
方法二,判斷文件頭
/// 根據文件頭判斷上傳的文件類型 /// </summary> /// <param name="filePath">filePath是文件的完整路徑 </param> /// <returns>返回true或false</returns> private bool IsPicture(string filePath) { try { FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read); BinaryReader reader = new BinaryReader(fs); string fileClass; byte buffer; buffer = reader.ReadByte(); fileClass = buffer.ToString(); buffer = reader.ReadByte(); fileClass += buffer.ToString(); reader.Close(); fs.Close(); if (fileClass == "255216" || fileClass == "7173" || fileClass == "13780" || fileClass == "6677") //255216是jpg;7173是gif;6677是BMP,13780是PNG;7790是exe,8297是rar { return true; } else { return false; } } catch { return false; } }