婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 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類實現上傳文件實例的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲va韩国va欧美va| 欧美经典一区二区| 精品欧美一区二区久久| 国产精品一区专区| av午夜精品一区二区三区| 99久久免费视频.com| 欧美性色综合网| 久久美女艺术照精彩视频福利播放| 国产精品另类一区| 蜜臀av一区二区在线观看| 欧美亚洲综合另类| 久久久.com| 国产精品一区二区不卡| 日韩三级高清在线| 日产国产欧美视频一区精品| 欧美综合一区二区| 亚洲综合999| 91网站最新网址| 国产精品九色蝌蚪自拍| 国产一区二区在线观看视频| 欧美一区二区视频观看视频| 亚洲在线观看免费| 久久超碰97中文字幕| 99精品久久免费看蜜臀剧情介绍| 国产视频一区二区三区在线观看| 亚洲欧美精品午睡沙发| 97se亚洲国产综合自在线| 日韩亚洲欧美中文三级| 舔着乳尖日韩一区| 99这里只有久久精品视频| 欧美精品一区二区在线观看| 午夜激情一区二区| 欧美日韩一本到| 亚洲午夜一区二区| 欧美亚州韩日在线看免费版国语版| 国产精品美女久久久久久久 | 久久综合资源网| 午夜久久福利影院| 在线欧美小视频| 亚洲成人在线免费| 精品少妇一区二区三区日产乱码 | 亚洲高清视频中文字幕| 色香蕉久久蜜桃| 亚洲亚洲人成综合网络| 欧美日韩大陆一区二区| 免费在线成人网| 欧美极品另类videosde| 色菇凉天天综合网| 亚洲精品免费在线播放| 国产成人免费在线观看| 亚洲少妇30p| 欧美日韩国产大片| 国产大陆精品国产| 亚洲精品视频免费观看| 欧美精品第1页| 国产精品夜夜嗨| 一区二区高清在线| 人人超碰91尤物精品国产| 欧美xxxxx牲另类人与| 99久久精品国产麻豆演员表| 日本伊人色综合网| 国产精品麻豆视频| 日韩欧美在线网站| 色94色欧美sute亚洲13| 美日韩一区二区| 亚洲精品久久7777| wwwwxxxxx欧美| 欧美精品精品一区| 91在线国产福利| 国产一区二区三区免费播放| 伊人开心综合网| 中文字幕成人在线观看| 欧美日韩久久不卡| 丰满少妇久久久久久久| 香蕉久久一区二区不卡无毒影院| 久久久欧美精品sm网站| 欧美日韩极品在线观看一区| 国产sm精品调教视频网站| 亚洲成人动漫精品| 中文字幕一区二区不卡| 2020国产精品| 欧美日韩不卡一区| 色综合久久综合网欧美综合网 | 欧美日韩精品久久久| 成人va在线观看| 蜜臀99久久精品久久久久久软件| 亚洲精品美腿丝袜| 欧美极品aⅴ影院| 777xxx欧美| 在线亚洲一区观看| 大桥未久av一区二区三区中文| 亚洲精品水蜜桃| 91啪九色porn原创视频在线观看| 五月天激情综合| 亚洲一区二区在线视频| 亚洲综合一区在线| 亚洲国产精品一区二区久久 | 亚洲欧美一区二区在线观看| 久久一二三国产| 久久久亚洲精品一区二区三区| 欧美一级欧美三级| 欧美精品一区二区三区蜜桃视频| 欧美一区二区二区| 精品成人一区二区| 国产嫩草影院久久久久| 国产精品久久久久一区二区三区| 久久精品视频免费| 国产精品久久久久久久久免费樱桃| 久久久综合视频| 国产亚洲一区二区在线观看| wwwwxxxxx欧美| 国产精品夫妻自拍| 一区二区三区四区激情| 欧美一区二区三区四区高清| 欧美一级艳片视频免费观看| 精品国产自在久精品国产| 久久婷婷成人综合色| 亚洲天堂中文字幕| 亚洲成国产人片在线观看| 水蜜桃久久夜色精品一区的特点| 蜜臀av性久久久久蜜臀aⅴ| 国内成人免费视频| av高清久久久| 欧美日韩夫妻久久| 日本一区二区免费在线观看视频| 亚洲激情五月婷婷| 99国产欧美另类久久久精品| 色老汉av一区二区三区| 日韩手机在线导航| 国产精品福利一区| 亚洲成av人片一区二区三区| 日韩国产欧美一区二区三区| 亚洲小说欧美激情另类| 日本人妖一区二区| 成人免费三级在线| 欧美一级精品在线| 亚洲欧美一区二区久久 | 91精品国产高清一区二区三区| 久久蜜桃av一区精品变态类天堂 | 欧美网站大全在线观看| 日韩欧美资源站| 日韩毛片高清在线播放| 亚洲已满18点击进入久久| 午夜精品久久久久久| 国产不卡视频一区| 欧美视频完全免费看| 国产亚洲精久久久久久| 亚洲自拍偷拍麻豆| 成人性生交大片免费看视频在线 | 蜜桃视频一区二区三区在线观看| 欧美一卡在线观看| 亚洲成年人影院| 91精品国产综合久久精品app | 国产欧美一区二区三区在线看蜜臀 | 99这里只有精品| 最近日韩中文字幕| 风间由美一区二区三区在线观看| 久久久久久免费毛片精品| 精品制服美女丁香| 97精品视频在线观看自产线路二| 亚洲视频在线一区观看| 99久久婷婷国产| 亚洲第一主播视频| 欧美日本免费一区二区三区| 国产亲近乱来精品视频 | av动漫一区二区| 久久99精品久久久久久动态图| 国产精品18久久久久久久久 | 亚洲一二三区不卡| 欧美性生活大片视频| 精品一区二区成人精品| 日韩免费福利电影在线观看| 成人丝袜视频网| 国产精品青草综合久久久久99| 午夜精品视频在线观看| 久久日一线二线三线suv| 久久精品国产色蜜蜜麻豆| 91精品国产综合久久久蜜臀粉嫩| 午夜不卡av免费| 在线观看91精品国产麻豆| 一区二区在线观看不卡| 在线观看国产日韩| 日本美女一区二区| 久久丝袜美腿综合| 成人avav在线| 亚洲国产日韩在线一区模特| 91精品国产色综合久久| 狠狠色综合色综合网络| 欧美一区二区三区免费观看视频 | 青青草精品视频| 精品国产91九色蝌蚪| 精品一区二区三区免费视频| 亚洲欧洲美洲综合色网| 国产乱码一区二区三区| 青青草精品视频| 中文字幕一区二区三区不卡| 精品日韩av一区二区| 欧美日韩综合在线| 成人一区二区在线观看| 国产一区二区导航在线播放|