2010-08-13 84 views

回答

2

只是驗證文件的擴展名,因爲我沒有爲Excel文件

string fileExtension = Path.GetExtension(fileUpload.PostedFile.FileName.ToString()); 
     //if (fileExtension == ".xls" || fileExtension == ".xlsx") 
     if (fileExtension == ".xls") 
     { 
      return true; 
     } 
     else 
     { 
      return false; 
     } 
0

首先在HTML中使用accept屬性。

然後檢查文件的ContentType。

)不要檢查文件的名稱,這是網絡不是本地機器,所以你不知道用什麼方式命名文件,特別是在系統與windows不同的方式確定文件類型,或者在你的擴展和應用程序之間有不同的綁定

最後,如果可以檢測到錯誤報告的文件(嘗試將它加載到相關的類中 - 比如將圖像/ png加載到位圖 - 在前幾個字節中查找定義的文件「幻數」等),然後執行此操作。神奇數字方法可能是有用的(不要混淆建議使用常量來避免源代碼中的「神奇數字」,不同含義),因爲許多文件類型必須以匹配特定模式的字節序列開始。例如。如果有人上傳隨機垃圾,聲稱它是PNG或GIF,則只需查看前幾個字節即可檢測到該垃圾。