欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASPX文件上传限制类型实例源码

程序员文章站 2023-08-25 23:44:29
小菜分享下自己的思路,不知道各位有木有更好的方法 : using system; using system.collections.generic; using system.linq; usin...

小菜分享下自己的思路,不知道各位有木有更好的方法



using system;
using system.collections.generic;
using system.linq;
using system.web;
using system.web.ui;
using system.web.ui.webcontrols;

public partial class _default : system.web.ui.page
{
    protected void page_load(object sender, eventargs e)
    {
 //myblog:https://seay.sinaapp.com/
    }
    protected void button1_click(object sender, eventargs e)
    {
        #region 文件类型判断
 
 //得到上传文件名
        string filename = fileupload1.filename;
 
 //判断文件名中有木有.
        if (!(filename.contains(".")))
        {
            response.write("该文件类型不允许上传!");
            return;
        }
 
 //取到.的下标
        int index = filename.lastindexof('.');

        char[] c = filename.tochararray();

        string file_hz = "";
 
 //循环得到后缀名
        for (int i = 0; i < filename.length - index; i++)
        {
            file_hz += c[index + i];
        }

 //允许上传的文件名
        string[] filetype = { ".jpg", ".gif", ".bmp", ".jpeg" };

        bool bl = false;
 
 //循环遍历上传的文件扩展名是否在允许的扩展名中
        foreach (string str in filetype)
        {
            if (str == file_hz)
            {
                bl = true;
            }
        }

        if (bl == false)
        {
            response.write("该文件类型不允许上传!");
            return;
        }

        #endregion

        //获取时间戳给文件命名,这样写感觉有点复杂,不知道各位有木有好的方法获取时间戳
        datetime starttime = timezone.currenttimezone.tolocaltime(new system.datetime(1970, 1, 1, 0, 0, 0, 0));
        datetime newtime = datetime.now;

        long utime = (long)math.round((newtime - starttime).totalmilliseconds, midpointrounding.awayfromzero);

        filename = utime.tostring() + file_hz;

 //获取文件字节数
        string filelenght = fileupload1.postedfile.contentlength.tostring();
       
        string filepath = server.mappath("img/" + filename);
 
 //上传
        fileupload1.saveas(filepath);

        response.write("上传成功<br />文件大小:" + filelenght + "<br />路径:img/" + filename);
    }
}