拡張子が.csvの場合、誰かが手動で拡張子を.xlsxに変更しました(たとえば、デスクトップで.csv拡張子を手動で変更するなど)。 pdf).where。ファイル拡張子は.xlsx形式に変更されますが、コンテンツは.csv形式に属します。このような種類の悪質なファイルをC#で見つける方法はあります。コードの下 は、ファイルの拡張子を取得するが、それは、ファイルの拡張子を手動で変更されているかどうかを知っているかいないc#悪意のあるファイル形式の変更
Path.GetExtension(Be.FileName).ToLower().Contains(".csv")
を私は両方のコンテンツタイプの拡張子を確認したいともいくつかの侵入者がファイルを変更することがありextension.Sinceを提出しません私たちが望む拡張機能に拡張することができます。しかし、ファイルの内容は別の拡張機能に属している可能性があります。上記のコードはファイル拡張子のみを検索し、正確な拡張子は検索しません。
この種のファイルを見つけるために、CSVhelperには他のプロパティがありますか?
誰でもこれを助けることができますか?
"正確な拡張子"が見つかりましたが、これは "ファイルの実際のコンテンツの形式"とはまったく異なります。ファイル名とその内容との間には保証された関係はありません。 –
ヒューリスティックファイルチェッカーのようなものを作成することもできますが、膨大な量のケースではそれは不可能になります。あなたはあなたがファイルとして "欲しい"ものを知っています - それを解析し、エラーを捕らえて、ユーザーを罵倒しようとします。クラップアウト。 –
また、2つのファイルに*正確に同じ*内容が含まれていても、意図した*解釈*が異なることに注意してください。例えば。 HTTPのコンテンツタイプが対処しようとする問題。 –