Я занимаюсь созданием веб-приложения. Он позволяет загружать файл .txt или .log (например, журналы IIS).Есть ли надежный способ определения текстового файла?
Текущий способ, который я проверяю, если это .txt или .log, проверяет расширение файла. Теперь мне это не нравится, поскольку он позволяет кому-либо менять virus.exe
на virus.txt
, и он будет загружаться.
Как проверить, действительно ли это текстовый файл? Я уверен, что это распространенная проблема, но я не могу найти никаких хороших решений.
Остерегайтесь UTF-16. – SLaks
вы можете проверить тип файла – user1666620
Вы можете проверить первые 256 байтов файла. См. [Предыдущий ответ] [1] . [1]: http://stackoverflow.com/questions/58510/using-net-how-can-you-find-the-mime-type-of-a-file-based-on-the- file-signature –