zoukankan      html  css  js  c++  java
  • asp.net文件上传

    //判断文件类型是否符合标准
    public static bool IsAllowedExtension(FileUpload hifile)
    {
        System.IO.FileStream fs 
    = new System.IO.FileStream(hifile.PostedFile.FileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
        System.IO.BinaryReader r 
    = new System.IO.BinaryReader(fs);
        
    string fileclass = "";
        
    byte buffer;
        
    try
        
    {
            buffer 
    = r.ReadByte();
            fileclass 
    = buffer.ToString();
            buffer 
    = r.ReadByte();
            fileclass 
    += buffer.ToString();

        }

        
    catch
        
    {

        }

        r.Close();
        fs.Close();
        
    if (fileclass == "255216" || fileclass == "7173")//说明255216是jpg;7173是gif;6677是BMP,13780是PNG;7790是exe,8297是rar
        {
            
    return true;
        }

        
    else
        
    {
            
    return false;
        }

    }


    /// <summary>
    /// 保存上传的文件
    /// </summary>
    /// <param name="fileType">要验证的文件类型</param>
    /// <param name="lenghtKB">大小(单位:KB)</param>
    /// <param name="filePath">保存的路径(绝对路径)</param>
    /// <param name="upLoad">上传文件的控件</param>
    /// <param name="fileName">成功:保存后的文件名.失败:错误信息</param>
    /// <returns>是否保存成功</returns>

    public static bool SaveFile(string fileType, int lenghtKB, string filePath, FileUpload upLoad, out string fileName)
    {
        
    //判断是否上传了文件
        if (!upLoad.HasFile)
        
    {
            fileName 
    = "无效的文件内容";
            
    return false;
        }


        
    //判断文件大小
        if (upLoad.PostedFile.ContentLength > lenghtKB * 1024)
        
    {
            fileName 
    = "文件超过上传大小";
            
    return false;
        }


        
    //文件类型
        string type = upLoad.FileName;
        
    string last = type.Substring(type.LastIndexOf('.'+ 1);
        type 
    = upLoad.PostedFile.ContentType;
        
    //type = type.Substring(type.LastIndexOf('.') + 1);
        if (type.Substring(05!= fileType)
        
    {
            fileName 
    = "无效的文件类型";
            
    return false;
        }


        DateTime date 
    = DateTime.Now;

        
    //生成文件名
        fileName = date.Year.ToString() + date.Month.ToString() + date.Day.ToString() + date.Hour.ToString() +
                    date.Minute.ToString() 
    + date.Second.ToString() + GetRandom().Next(0999+ "." + last;
        upLoad.SaveAs(filePath 
    + @"\" + fileName);
        
    return true;

    }
  • 相关阅读:
    匿名,排序,过滤,映射,递归函数
    内置函数图
    for(var i in items) 和 for(var i;i<items.length;i++) 区别
    js中var、let、const的区别 (待总结)
    eclipse拉取git项目 Read timed out after 30,000 ms
    eclispe git config配置文件配置远程仓库
    git pull出错:cannot pull into a repository with state: merging_resolved"
    HttpClient之用CloseableHttpClient发送post请求
    注意设置httpclient连接数
    This compilation unit is not on the build path of java project (此编译单元不在java项目的生成路径上)
  • 原文地址:https://www.cnblogs.com/di305449473/p/1243217.html
Copyright © 2011-2022 走看看