亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > Asp.Net的FileUpload類實現上傳文件實例

Asp.Net的FileUpload類實現上傳文件實例

熱門標簽:太原400電話上門辦理 浦發電話機器人提醒還款 百度地圖怎樣做地圖標注 柳州電銷機器人公司 騰訊地圖標注手機 征途美甲店地圖標注 電銷語音機器人型號參數 400電話如何申請取消 昆明語音電銷機器人價格

本文實例講述了Asp.Net的FileUpload類實現上傳文件的方法。分享給大家供大家參考。

具體功能代碼如下:

復制代碼 代碼如下:
using System;
using System.Collections.Generic;
using System.Text;
using System.Web.UI;
using System.Web;
using System.Web.UI.WebControls;
using System.Collections;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;

namespace CSFramework.BLL
{
   /// summary>
   /// 支持上傳的文件類型
   /// /summary>
   public enum UploadFileType
   {
      ArticleAttachment = 1,
      Image = 2,
      Video = 3,
      All = 4
   }
  
   /// summary>
   /// 上傳文件管理類
   /// /summary>
   public class CFileUpload
   {
      private FileUpload _fileUpload;
      private string _savePath;
      private string _LastUploadedFile = string.Empty;
      private bool _AutoGenFileName = false;
      private bool _AutoGenWatermark = false;
      public string LastUploadedFile { get { return _LastUploadedFile; } }
      private string _Error = "";
     
      private string PICTURE_FILE = "[.gif.png.jpeg.jpg]";
      private string ZIP_FILE = "[.zip.rar]";
      private string MUILT_MEDIA_FILE = "[.mpeg.mpg.fla.wma]";
     
      private int IMG_MAX_WIDTH = 700;//指定寬度
      private int IMG_MAX_HEIGHT = 0;//未指定高度
      private int MAX_SIZE_UPLOAD = 1024;//最大支持上傳小于1MB的文件。
     
      /// summary>
      /// 構造器
      /// /summary>
      /// param name="fileUpload">Asp.net FileUpload對象/param>
      /// param name="savePath">保存目錄,不包含文件名/param>
      /// param name="autoGenFileName">自動生成文件名/param>
      public CFileUpload(FileUpload fileUpload, string savePath, bool autoGenFileName, bool autoGenWatermark)
      {
         _savePath = savePath;
         _fileUpload = fileUpload;
         _AutoGenFileName = autoGenFileName;
         _AutoGenWatermark = autoGenWatermark;
      }
     
      /// summary>
      /// 構造器
      /// /summary>
      /// param name="fileUpload">Asp.net FileUpload對象/param>
      /// param name="savePath">保存目錄,不包含文件名/param>
      public CFileUpload(FileUpload fileUpload, string savePath)
      {
         _savePath = savePath;
         _fileUpload = fileUpload;
      }
     
      /// summary>
      /// 上傳RAR文件
      /// /summary>
      public bool UploadRARFile()
      {
         return DoUpload(ZIP_FILE);
      }
     
      /// summary>
      /// 上傳視頻文件
      /// /summary>
      public bool UploadVideo()
      {
         return DoUpload(MUILT_MEDIA_FILE);
      }
     
      /// summary>
      /// 上傳圖片文件
      /// /summary>
      public bool UploadImage()
      {
         return DoUpload(PICTURE_FILE);
      }
     
      public bool UploadImage(int maxWidth, int maxHeight)
      {
         this.IMG_MAX_WIDTH = maxWidth;
         this.IMG_MAX_HEIGHT = maxHeight;
         return DoUpload(PICTURE_FILE);
      }
     
      /// summary>
      /// 上傳任何支持的文件
      /// /summary>
      public bool UploadAnySupported()
      {
         return DoUpload(PICTURE_FILE ZIP_FILE MUILT_MEDIA_FILE);
      }
     
      /// summary>
      /// 生成新的文件名
      /// /summary>
      private string GetNewFileName(string folder, string fileName)
      {
         if (_AutoGenFileName) //自動生成32位GUID文件名
         {
            string ext = System.IO.Path.GetExtension(fileName);
            string newfile = Guid.NewGuid().ToString().Replace("-", "") ext;
            return folder newfile;
         }
         else
         {
            if (System.IO.File.Exists(folder fileName))
            {
               string ext = System.IO.Path.GetExtension(fileName);
               string filebody = fileName.Replace(ext, "");
              
               int x = 1;
               while (true) //如果文件存在,生成尾部帶(x)的文件
               {
                  string newfile = folder filebody "(" x.ToString() ")" ext;
                  if (!System.IO.File.Exists(newfile))
                  return folder filebody "(" x.ToString() ")" ext;
                  else
                  x ;
               }
            }
            else
            return folder fileName;
         }
      }
     
      /// summary>
      /// 最大支持小于1MB的文件。
      /// /summary>
      private bool AllowMaxSize(int fileLength)
      {
         double kb = fileLength / 1024;
         return (int)kb MAX_SIZE_UPLOAD;
      }
     
      private bool DoUpload(string allowedExtensions)
      {
         try
         {
            bool fileOK = false;
           
            if (!_fileUpload.HasFile) throw new Exception("沒有文件!"); //上傳控件中如果不包含文件,退出
           
            // 得到文件的后綴
            string fileExtension = System.IO.Path.GetExtension(_fileUpload.FileName).ToLower();
           
            // 看包含的文件是否是被允許的文件后綴
            fileOK = allowedExtensions.IndexOf(fileExtension) > 0;
            if (!fileOK) throw new Exception("不支持的文件格式!");
           
            //檢查上傳文件大小
            fileOK = AllowMaxSize(_fileUpload.FileBytes.Length);
            if (!fileOK) throw new Exception("圖片文件不能大于" MAX_SIZE_UPLOAD.ToString() "KB!");
           
            try
            {
               // 文件另存在服務器指定目錄下
               string savefile = GetNewFileName(_savePath, _fileUpload.FileName);
              
               if (IsUploadImage(fileExtension))//保存圖片
               {
                  System.Drawing.Image output = CImageLibrary.FromBytes(_fileUpload.FileBytes);
                 
                  // 檢查圖片寬度/高度/大小
                  if (this.IMG_MAX_WIDTH != 0 output.Width > this.IMG_MAX_WIDTH)
                  {
                     output = CImageLibrary.GetOutputSizeImage(output, this.IMG_MAX_WIDTH);
                  }
                 
                  Bitmap bmp = new Bitmap(output);
                 
                  this.CreateDir(Path.GetDirectoryName(savefile));
                 
                  bmp.Save(savefile, output.RawFormat);
                  bmp.Dispose();
                  output.Dispose();
                 
                  if (_AutoGenWatermark)
                  {
                     WatermarkImage genWatermark = new WatermarkImage();
                     genWatermark.DrawWords(savefile, AppConfig.Current.WatermarkMain,
                     AppConfig.Current.WatermarkDesc, float.Parse("0.2"));
                  }
               }
               else//其它任何文件
               {
                  this.CreateDir(Path.GetDirectoryName(savefile));
                 
                  _fileUpload.PostedFile.SaveAs(savefile);
               }
              
               _LastUploadedFile = savefile;
              
               return true;
            }
            catch (Exception ex)
            {
               throw new Exception("上傳文件時發生未知錯誤!" ex.Message);
            }
         }
         catch (Exception ex)
         {
            _Error = ex.Message;
            return false;
         }
      }
     
      private void CreateDir(string dir)
      {
         if (Directory.Exists(dir) == false)
         Directory.CreateDirectory(dir);
      }
     
      private bool IsUploadImage(string fileExtension)
      {
         bool isImage = PICTURE_FILE.IndexOf(fileExtension) > 0;
         return isImage;
      }
   }
}

希望本文所述對大家的asp.net程序設計有所幫助。

您可能感興趣的文章:
  • Asp.Net修改上傳文件大小限制方法
  • Asp.net MVC中使用JQuery插件ajaxFileUpload上傳文件
  • ASP.NET插件uploadify批量上傳文件完整使用教程
  • asp.net上傳文件到數據庫的解決方案
  • asp.net中MVC借助Iframe實現無刷新上傳文件實例
  • asp.net fileupload控件上傳文件與多文件上傳
  • Asp.Net模擬表單提交數據和上傳文件的實現代碼
  • asp.net實現上傳文件顯示本地絕對路徑的實例代碼
  • 如何限制asp.net中上傳文件的大小的代碼
  • asp.net 模擬提交有文件上傳的表單(通過http模擬上傳文件)
  • 解決.net項目中上傳的圖片或者文件太大無法上傳問題

標簽:新疆 陽泉 蘭州 德陽 白山 張家界 天門 江蘇

巨人網絡通訊聲明:本文標題《Asp.Net的FileUpload類實現上傳文件實例》,本文關鍵詞  Asp.Net,的,FileUpload,類,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Asp.Net的FileUpload類實現上傳文件實例》相關的同類信息!
  • 本頁收集關于Asp.Net的FileUpload類實現上傳文件實例的相關信息資訊供網民參考!
  • 推薦文章
    高清一级淫片a级中文字幕| 国产伦精品一区二区三区在线观看| 999久久狠狠免费精品| a级黄色毛片免费播放视频| 青青青草影院| 欧美一级视频高清片| 欧美国产日韩精品| 99热精品在线| 免费国产一级特黄aa大片在线| 国产精品自拍在线| 亚洲天堂免费| 国产a毛片| 青草国产在线| 日本伦理片网站| 99色播| 国产视频一区在线| 麻豆午夜视频| 日日夜人人澡人人澡人人看免| 九九免费高清在线观看视频| 国产麻豆精品免费视频| 国产视频一区二区在线播放| 99热精品在线| 日日夜人人澡人人澡人人看免| 可以在线看黄的网站| 精品国产一区二区三区精东影业| 欧美爱色| 精品国产一区二区三区久久久蜜臀| 欧美a免费| 国产伦久视频免费观看 视频| 国产精品1024在线永久免费| 日韩中文字幕一区| 欧美爱爱网| 国产欧美精品午夜在线播放| 久久国产精品自由自在| 国产网站免费| 九九久久99综合一区二区| 四虎久久影院| 深夜做爰性大片中文| 国产亚洲男人的天堂在线观看| 日韩中文字幕在线观看视频| 精品久久久久久免费影院| 日本特黄特色aaa大片免费| 久久国产影视免费精品| 亚洲女人国产香蕉久久精品| 日韩在线观看视频黄| 国产一级强片在线观看| 午夜在线亚洲| 亚欧成人乱码一区二区| 亚洲精品中文字幕久久久久久| 韩国毛片| 国产一级强片在线观看| 日韩在线观看视频网站| 久久国产精品只做精品| 日韩av成人| 国产综合成人观看在线| 欧美电影免费| 亚洲第一页色| 二级片在线观看| 青青青草影院| 精品在线观看一区| 黄色福利| 天堂网中文在线| 成人高清护士在线播放| 成人高清视频在线观看| 日韩一级黄色大片| 99热热久久| 国产网站免费| 国产成人精品影视| 青青久在线视频| 久久国产精品只做精品| 欧美激情一区二区三区视频高清| 高清一级做a爱过程不卡视频| 欧美国产日韩在线| 91麻豆精品国产片在线观看| 日韩av东京社区男人的天堂| 成人影视在线播放| 午夜在线影院| 欧美爱色| 久久国产影视免费精品| 精品国产亚洲人成在线| 欧美1区2区3区| 日本特黄一级| 久久国产精品自线拍免费| 久久国产一区二区| 日韩av东京社区男人的天堂| 91麻豆精品国产自产在线观看一区| 亚欧视频在线| 青青青草视频在线观看| 国产成人啪精品| 九九久久99综合一区二区| 国产网站在线| 久久久久久久男人的天堂| 国产伦精品一区二区三区在线观看| 欧美大片aaaa一级毛片| 四虎影视精品永久免费网站 | 国产精品免费久久| 超级乱淫黄漫画免费| 二级片在线观看| 欧美激情一区二区三区视频高清| 日本伦理片网站| 精品视频一区二区三区| 黄色短视频网站| 精品国产亚洲人成在线| 99热热久久| 香蕉视频一级| 成人av在线播放| 青青青草影院 | 精品国产一区二区三区久久久狼| 国产综合成人观看在线| 日韩在线观看视频黄| 国产不卡高清| 国产成+人+综合+亚洲不卡| 国产一区国产二区国产三区| 亚洲女人国产香蕉久久精品| 色综合久久天天综合观看| 国产一区二区精品| 国产视频一区二区在线观看 | 你懂的日韩| 毛片高清| 精品久久久久久中文字幕2017| 午夜家庭影院| 二级特黄绝大片免费视频大片| 久久精品店| 99久久精品费精品国产一区二区| 日韩中文字幕在线亚洲一区 | 日韩中文字幕一区| 国产91丝袜高跟系列| 九九精品在线| 二级特黄绝大片免费视频大片| 亚洲精品中文一区不卡| 九九九网站| 二级特黄绝大片免费视频大片| 日本在线不卡免费视频一区| 韩国三级一区| 二级特黄绝大片免费视频大片| 999久久66久6只有精品| 欧美爱色| 免费国产在线视频| 久久久久久久久综合影视网| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | a级毛片免费全部播放| 欧美爱爱网| 欧美a级片免费看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 黄视频网站在线免费观看| 天天色成人| 美女免费精品高清毛片在线视 | 一 级 黄 中国色 片| 久久国产精品只做精品| 日韩免费在线视频| 久久精品成人一区二区三区| 欧美日本二区| 91麻豆tv| 黄色免费三级| 欧美大片aaaa一级毛片| 国产成人精品综合久久久| 黄色福利片| 国产福利免费观看| 麻豆午夜视频| 亚洲精品中文一区不卡| 亚欧成人乱码一区二区| 91麻豆精品国产自产在线| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 精品视频在线观看一区二区| 日本特黄特黄aaaaa大片| 久草免费在线观看| 国产成+人+综合+亚洲不卡| 91麻豆精品国产自产在线| 九九干| 日韩中文字幕在线观看视频| 亚飞与亚基在线观看| 欧美国产日韩久久久| 黄视频网站免费看| 日韩男人天堂| 亚洲精品中文一区不卡| 久久精品免视看国产成人2021| 欧美激情伊人| 久久国产影院| 一本伊大人香蕉高清在线观看| 成人免费一级纶理片| 精品在线视频播放| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 久久99中文字幕| 久久99这里只有精品国产| 国产a毛片| 国产伦精品一区二区三区无广告 | 国产高清在线精品一区二区| 999精品在线| 亚飞与亚基在线观看| 你懂的福利视频| 91麻豆精品国产综合久久久| 黄色免费网站在线| 国产成人精品综合久久久| a级黄色毛片免费播放视频| 可以免费在线看黄的网站| 高清一级做a爱过程不卡视频| 美女免费精品高清毛片在线视 | 黄视频网站在线看| 青青久久国产成人免费网站| 成人a大片在线观看|