Этот файл Excel, promoImportTemplate.xls, является совершенно допустимым файлом Excel при открытии из его источника. При загрузке с моего сервера IIS по указанному выше URL-адресу с использованием curl, Firefox, Chrome или IE сохраненный файл имеет точно такой же размер файла и MD5:
C:\Users\rpresser\Downloads>md5sum p*xls
1ec492aef69bd9cf2b784003167addbb *promoImportTemplate - Chrome download.xls
1ec492aef69bd9cf2b784003167addbb *promoImportTemplate - curl.xls
1ec492aef69bd9cf2b784003167addbb *promoImportTemplate - original.xls
При загрузке с использованием браузера существует альтернативный поток данных, который помечает файл как полученный из зоны Интернета. Это нормально и ожидаемо. Тем не менее, это делает Excel утверждать, что файл поврежден. Там нет никаких других различий между рабочим файлом и "коррумпированной" файлом. MD5 такой же, и все файлы помечены только для чтения, чтобы предотвратить изменение внутренней меткой времени в Excel. Смотрите это видео для демонстрации.
Если я удаляю ADS с помощью утилиты Streams , то загруженный файл открывается нормально. (Не на видео, извините. Я думал об этом позже.)
Есть ли возможное объяснение этому странному поведению?