/// <summary>
/// 检查文件格式是否充许
/// </summary>
/// <param name="ImageFormat">待检查的文件格式</param>
/// <returns>是否合法</returns>
private bool HasThisForamt(string ImageFormat)
{
string ImageFormats = "gif|png|gif|bmp";
if (ImageFormats.ToLower().IndexOf(ImageFormat.ToLower())>=0)
{
return true;
}
return false;
}
/// <summary>
/// 判断上传的图片文件格式是否合法
/// </summary>
/// <param name="upControl">文件上传控件</param>
/// <returns>是否合法</returns>
private bool IsImageFormat( FileUpload upControl )
{
try
{
using (System.Drawing.Image img = System.Drawing.Image.FromStream(upControl.FileContent))
{
if (HasThisForamt("Bmp") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Bmp)) return true;
if (HasThisForamt("Emf") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Emf)) return true;
if (HasThisForamt("Exif") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Exif)) return true;
if (HasThisForamt("Gif") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Gif)) return true;
if (HasThisForamt("Icon") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Icon)) return true;
if (HasThisForamt("Jpeg") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Jpeg)) return true;
if (HasThisForamt("MemoryBmp") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.MemoryBmp)) return true;
if (HasThisForamt("Png") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Png)) return true;
if (HasThisForamt("Tiff") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Tiff)) return true;
if (HasThisForamt("Wmf") && img.RawFormat.Equals(System.Drawing.Imaging.ImageFormat.Wmf)) return true;
}
}
catch
{
//此文件不是圖像文件
}
//您所選擇的文件格式不充许
return false;
}
//...........
public bool IsEligibilityFileFormat(FileUpload fs)
{
bool xx = false;
//System.IO.FileStream fs = new System.IO.FileStream(sFileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
System.IO.BinaryReader r = new System.IO.BinaryReader(fs.FileContent);
string bx = " ";
byte buffer;
try
{
buffer = r.ReadByte();
bx = buffer.ToString();
buffer = r.ReadByte();
bx += buffer.ToString();
}
catch (Exception exc)
{
}
r.Close();
//fs.Close();
Response.Write(bx);
if (bx == "7790 " || bx == "8297 " || bx == "8075 ") //7790:exe,8297:rar,8075:pk
{
xx = true;
}
return xx;
/*
7173 gif
255216 jpg
7790 exe dll
00 ani--ico--cur
7783
255254 --ini
9146 -- ini
5866
6395 hlp
8269 reg
70105 log
205168
7384 chm
5549 txt
117115 txt
5450 txt
5666 psd
255254 rdp
10056 bt种子
8297 rar
64101 bat
*/
}