jak*_*yem 1 c# asp.net upload file-upload photo
我想上传只有jpeg,jpg等的文件.但我无法在打开的窗口中过滤文件.我想在asp.net中将文本"所有文件"更改为jpeg等.(C#)
您可以使用RegularExpressionValidator来验证用户是否尝试上传jpeg文件:
<asp:FileUpload ID="FileUpload1" runat="server" /><br />
<br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click"
Text="Upload File" /> <br />
<br />
<asp:Label ID="Label1" runat="server"></asp:Label>
<asp:RegularExpressionValidator
id="RegularExpressionValidator1" runat="server"
ErrorMessage="Only jpeg files are allowed!"
ValidationExpression="^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*))
+(.jpg|.JPG|.jpeg|.JPEG)$"
ControlToValidate="FileUpload1"></asp:RegularExpressionValidator>
<br />
<asp:RequiredFieldValidator
id="RequiredFieldValidator1" runat="server"
ErrorMessage="This is a required field!"
ControlToValidate="FileUpload1"></asp:RequiredFieldValidator>
Run Code Online (Sandbox Code Playgroud)
在服务器端:
protected void Button1_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
{
string fileExt =
System.IO.Path.GetExtension(FileUpload1.FileName);
if (fileExt == ".jpeg" || fileExt == ".jpg")
{
//do what you want with this file
}
else
{
Label1.Text = "Only .jpeg files allowed!";
}
}
else
{
Label1.Text = "You have not specified a file.";
}
}
Run Code Online (Sandbox Code Playgroud)
您应该知道任何用户都可以将扩展名fe从.exe更改为.jpg.我知道检查真实文件类型的唯一方法是使用函数Urlmon.dll.如果你想要进一步的信息,请看看这个SO问题:使用.NET,如何根据文件签名而不是扩展名找到文件的mime类型
| 归档时间: |
|
| 查看次数: |
9871 次 |
| 最近记录: |