首頁 >後端開發 >C++ >即使沒有有效的擴展,我如何可靠地確定文件的MIME類型。

即使沒有有效的擴展,我如何可靠地確定文件的MIME類型。

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-31 14:51:12576瀏覽

How Can I Reliably Determine a File's MIME Type in .NET, Even Without a Valid Extension?

確定文件的MIME類型.NET:繞過擴展問題

.NET開發中的一個常見挑戰涉及準確識別文件的MIME類型,尤其是在處理缺乏適當擴展或不正確的文件時。 這通常是由舊系統或原始數據流引起的。

>

本文使用

>的FindMimeFromData方法提出了一個可靠的解決方案。此方法分析文件的簽名(第一個256個字節)以確定其MIME類型,即使沒有有效的擴展名也提供了可靠的結果。 urlmon.dll>實現步驟:

    import
  1. >使用urlmon.dll導入必要的dll。 System.Runtime.InteropServices
  2. >定義外部函數FindMimeFromData FindMimeFromData>
  3. >讀取文件簽名:
  4. 創建一個函數,將文件的初始256字節讀取到字節數組中。 優雅地處理小於256個字節的文件。 >
  5. >呼叫
  6. >調用該方法,傳遞字節數組。 aFindMimeFromDataMIME類型的建議確保該方法僅依賴文件簽名。 null>代碼示例:

此改進的代碼段有效地處理任何大小的文件,如果檢測失敗,則提供默認的“未知/未知” MIME類型。 這種方法可確保可靠的MIME類型識別,無論文件擴展有效性如何。 >

以上是即使沒有有效的擴展,我如何可靠地確定文件的MIME類型。的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn