Для простых форматов, таких как CSV, просто проверьте себя, например, через regex.
<cffile action="read" file="#uploadedFile#" variable="contents" charset="UTF-8">
<cfset LooksLikeCSV = REFind("^([^;]*;)+[^;]*$", contents)>
Вы можете установить дополнительные проверки в отношении ограничений на размер файла или запрещенных символов.
Для других форматов файлов вы можете проверить подписи заголовка , которые появляются в первых нескольких байтах файла.
Вы могли бы даже написать полный анализатор для ожидаемого формата файла - для проверки CSV вы можете сделать ListToArray()
в CR / LF и проверить каждую строку по отдельности на соответствие регулярному выражению. XML также должен работать довольно просто - просто попробуйте передать его на XmlParse()
. Бинарные форматы, такие как изображения, немного сложнее, но и там есть библиотеки.