ファイルをアップロードする画像ファイルであるかどうかを確認

方法一:画像オブジェクトは、画像かどうかを決定することです

///  <要約> 
///は、画像ファイルかどうかを決定する
 ///  </要約> 
///  <PARAM NAME = "パス"> ファイルのフルパス</ param>の
///  <戻り値> リターン結果を/ <戻り値> 
公共ブールisImage(文字列のパス)
{ 
試み
{ 
 System.Drawing.Image IMG = System.Drawing.Image.FromFile(パス);
  を返す trueに; 
} 
キャッチ(例外E)は
{ 
 返す falseに; 
} 
}

第二の方法は、ファイルヘッダを決定します

///  <まとめ> 
/// ファイルヘッダのファイルタイプをアップロード判定された
 ///  </要約> 
///  <PARAM NAME = "filePathに"> filePathには、ファイルのフルパスである</ PARAM> 
///  <返品> trueまたはfalseを返しに> </リターン
プライベート BOOL IsPicture(文字列filePathに)
{ 
試み
{ 
 のFileStream FS = 新しい新しいFileStreamを(filePathに、FileMode.Open、FileAccess.Read); 
 BinaryReaderリーダー = 新しい新BinaryReader(FS);
  文字列fileClass;
  バイトのバッファ; 
 バッファー = reader.ReadByte()。
 fileClass  =buffer.ToString()。
 バッファ = reader.ReadByte()。
 fileClass + = buffer.ToString()。
 reader.Close(); 
 fs.Close(); 
 もし(fileClass == " 255216 " || fileClass == " 7173 " || fileClass == " 13780 " || fileClass == " 6677 " // 是255216のjpg、gif形式7173是; 6677是BMP、PNG 13780是; RAR是7790是exeファイル、8297 
{
  戻り 
 } 
 
 { 
 戻り 
 }
} 
キャッチ
{ 
 戻り 
} 
} 
パブリック 列挙FileExtension 
{ 
    JPG = 255216 
    GIF = 7173 
    BMP = 6677 
    PNG = 13780 
    COM = 7790 
    EXE = 7790 
    DLL = 7790 
    RAR = 8297 
    ZIP = 8075 
    XML = 6063 
    HTML = 6033 
    ASPX = 239187 
    CS = 117115 
    JS = 119105 
    TXT = 210187 
    SQL = 255254 
    BAT = 64101 
    BTSEED = 10056 
    RDP = 255254 
    PSD = 5666 
    PDF = 3780 
    CHM = 7384 
    LOG = 70105 
    REG = 8269 
    HLP = 6395 
    DOC = 208207 
    XLS = 208207 
    DOCX = 208207 
    XLSX = 208207 
}

効果的な従来の方法2つの修飾トロイの木馬のために、そのようなの.aspにこれを.jpgのように、直接内線番号を変更する、と言われています。JPGしかし生成トロイの木馬のツールの種類には影響はありません。私たちは、あなたが最初に良いを使用してお勧めします。

おすすめ

転載: www.cnblogs.com/Violety/p/11345910.html