Есть ли способ проверить файл в соответствии с его расширением?
У меня есть большое количество файлов, которые мое приложение копирует на удаленный сервер.Перед выполнением каждой копии файла я хотел бы проверить, является ли файл фактически тем, о чем говорит расширение файла.
Сейчас пользователь выбирает файлы и / или каталоги файлов, используя NSOpenPanel
.Когда у меня есть массив файлов, я могу проверить, существует ли каждый из них физически до начала копирования.У меня есть подтверждение того, что каталог с исходным кодом доступен для записи и работает нормально, а копия, использующая FSCopyObjectAsync
со всей отменой файла, также работает нормально.
Последняя часть - это проверка проверки.Мои пользователи ограничены в том, что они могут загружать, но фильтр выполняется с использованием расширения файла.Злоумышленник может, например, взять файл текстового документа (.doc по расширению файла) и изменить его на .png, чтобы он прошел первоначальную проверку открытого диалогового окна.
Это довольноупрощенный пример.Файлы используются сервером, и я просто хочу убедиться, что файлы, которые не будут работать, не будут загружены.
Я посмотрел на NSFileManager
attributeOfItems:atPath:
, но, похоже, это не так.предложить любую информацию для реального типа файла.Тип файла возвращает только тип каталога, символьной ссылки и т. Д.
Я бы не стал пытаться открывать и загружать каждый файл для проверки, просто прочитал заголовок файла и проверил, соответствует ли он спецификациям нужного типак.
Это не приложение для iOS.
Любая помощь или указатели в правильном направлении очень ценятся.