文件名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Image ID="Image1" runat="server" />
<br/>
<input type="file" name="f1" id="f1">
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" OnClientClick="return exisitExit()" />
<script>
function exisitExit() {
var f1 = document.getElementById("f1");
var ext= f1.value.substring(f1.value.lastIndexOf("."));
if (ext == ".jpg" || ext == ".jpeg" || ext == ".gif") {
return true;
}
else {
alert("文件类型不符合人要求");
return false;
}
}
</script>
OnClientClick是客户端脚本,一般使用javascript,在客户端,也就是IE中运行,点击后马上执行

protected void Button1_Click(object sender, EventArgs e)
{
//路径 文件名 扩展名 要求的存储格式~数组
HttpPostedFile hf = Request.Files["f1"];
string filename = hf.FileName;//全路径:F:\asp\456.jpg :FileName要上传的文件所在地
string Imgname = Path.GetFileName(filename);//文件名:456
string ext = Path.GetExtension(Imgname).ToLower();//获取拓展名:.jpg
Response.Write(Imgname + "<br/>" + ext);
string[] exts = {".jpg",".jpeg",".png",".bmp",".gif" };
bool tag = false;
foreach (string item in exts)
{
if (item == ext)
{
tag = true;
break;
}
}
if(tag) //扩展名符合要求,upload 自定义日期(dir) dirpath SaveAS(durpath+imgname)
{
if (hf.ContentLength < 1024 )
{
string uppath="upload/";
string dir = DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day;
string dirpath = Server.MapPath(uppath + dir);
if (!Directory.Exists(dirpath))
{
Directory.CreateDirectory(dirpath);
}
if (TextBox1.Text != "")
{
Imgname = TextBox1.Text + ext;
}
hf.SaveAs(dirpath + Imgname);
Image1.ImageUrl = uppath + dir + Imgname;
Image1.Width = 400;
Image1.Height = 300;
}
else
{
Response.Write("<script>alert('上传文件太大')</script>");
}
}
else
{
Response.Write("<script>alert('文件格式不对')</script>");
}
}

最新文章

  1. Trianglify - 生成五彩缤纷的 SVG 背景图案
  2. Python中list,tuple,dict,set的区别和用法
  3. 使用QTP测试Web对象
  4. .NET读取Office文件内容(word、excel、ppt)
  5. golang:slice陷阱
  6. Valgrind 安装与使用
  7. KVO的实现原理探寻
  8. .NET开源 FAQ
  9. CSS排序工具csscomb
  10. 【iOS】UIDynamicAnimator动画
  11. javascript中的函数节流和函数去抖
  12. 迁移svn项目到git
  13. 颜色空间之CIE2000色差公式
  14. Linux命令之nohup和重定向
  15. apache2.4多站点配置
  16. 【Python52--爬虫1】
  17. ZOJ 1007:Numerical Summation of a Series(数学)
  18. 如何玩转小程序+公众号?手把手教你JeeWx小程序CMS与公众号关联
  19. JS作用域,作用域,作用链详解
  20. python 之socket

热门文章

  1. HTML5图片上传预览
  2. Android之怎样改变焦点状态【EditText】
  3. Qt开发环境的搭建
  4. [jzoj 4722] [NOIP2016提高A组模拟8.21] 跳楼机 解题报告 (spfa+同余)
  5. [poj3974] Palindrome 解题报告 (hash\manacher)
  6. .net core @Html 自定义属性中包含特殊符号解决
  7. 用pigz来加速解压tar.gz
  8. POJ 3368 线段树
  9. (转载) TextView使用一些小技巧
  10. 在 Microsoft Word 文档 中粘贴代码实现语法高亮的方法