2012-03-17 3 views
2

Как проверить тип файла, когда нет расширения в C#Как проверить тип файла, когда нет расширения в C#

Например, у меня есть файлы без расширения, которые являются либо .mp4 или .flv (просто без расширения). Я планирую преобразовать эти видеофайлы в аудиофайлы, но я бы хотел определить тип файла, прежде чем начать его преобразовывать. Есть ли способ сделать это на C#?

Я думал, что, возможно, я мог бы просто переименовать файл name.mp4, а затем выполнить задачу на файл, который будет либо A) успеха, а это означает, что файл был действительно .mp4, или B) терпят неудачу, в этом случае я мог бы затем переименовать его в .flv

затем преобразовать файл как соответствующее расширение. Есть ли собственный процесс в C#, который может просматривать свойства .mp4 или свойства .flv? Я не хочу переименовывать файл в .mp4, а затем открывать его в стороннем приложении, например Windows Media Player, чтобы узнать, правильно ли я назвал его.

+0

Как это пошло не так? Просто спросите, кто переименовал файл, чтобы переименовать его. –

ответ

2

Я слышал о чтении первых нескольких байтов содержимого файла и образовании в формате файла. Эта связь выглядит многообещающим:

Using .NET, how can you find the mime type of a file based on the file signature not the extension

+1

Спасибо! это именно то, что я хочу. его трудно найти что-то, когда вы не знаете достаточно, чтобы сделать правильный поиск по ключевым словам lol – Thomas07vt

1

я играл в эту утилиту (TrID - File Identifier) и, кажется, довольно точно. Пакет защиты типов файлов (TrIDDefs) также обновлен.

И Here - это список таблиц подписи типа файла, если вы заинтересованы. Список продолжает работу в процессе.

 Смежные вопросы

  • Нет связанных вопросов^_^