Я пытаюсь загрузить изображения в папку. здесь мне нужно загрузить только изображения типа .JPEG|.jpeg|GIF|.gif|.PNG|.png|bmp|.BMP
Какое выражение мы должны написать здесь, чтобы когда-либо пользователь пытался загрузить свои файлы, а не это
Любое решение было бы здорово, спасибо
2 ответа
Вообще это плохая идея, но...
/(jpg|gif|bmp|png)$/
Запустите выражение на любом языке, который вы используете, и убедитесь, что оно нечувствительно к регистру.
Я говорю, что это плохая идея, потому что вам лучше проверить фактические данные в файле после того, как произойдет загрузка. Я могу переименовать файл во что угодно и загрузить его на ваш сайт.
ETA: косая черта может быть необязательной на вашем языке.
Я думаю, это должно работать с:
\w*.(jpg|jpeg|gif|png|bmp)$ Используя это, вам нужно использовать IgnoreCase в asp.net.
\w — это все буквенно-цифровые символы, за которыми следует точка (экранированная, поскольку это специальный символ). Затем одно из ваших расширений.
Но помните: файлы идентифицируются не по расширению, а по содержанию. Возможно, вы сможете использовать что-то похожее на утилиту linux «file» для определения типа файла. Я не знаю, существует ли что-то подобное для asp.net.
Похожие вопросы
Новые вопросы
.net
НЕ используйте для вопросов о .NET Core - используйте вместо этого [.net-core]. .NET Framework - это программная среда, предназначенная главным образом для операционной системы Microsoft Windows. Он включает в себя реализацию библиотеки базовых классов, общеязыковой среды выполнения (обычно называемой CLR), общей системы типов (обычно называемой CTS) и динамической среды исполнения. Он поддерживает множество языков программирования, включая C #, VB.NET, F # и C ++ / CLI.