澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

澳门新萄京官方网站微信小程序实现图片上传功

2019-05-03 作者:澳门新萄京官方网站   |   浏览(82)

Rename 命令:  

澳门新萄京官方网站 1澳门新萄京官方网站 2        /**//// <summary>
澳门新萄京官方网站 3        /// 上传文件,上传成功后回去一个 string 型的所上传文件名 上传文件不能凌驾三.伍M
澳门新萄京官方网站 4        /// </summary>
澳门新萄京官方网站 5        /// <param name="UpFileInput">上传文件所用的控件的ID</param>
澳门新萄京官方网站 6        /// <param name="FileSavePath">上传文件保留的门道(与上传页的相对路线)</param>
澳门新萄京官方网站 7        /// <param name="P">Web窗体页</param>
澳门新萄京官方网站 8        /// <returns>上传文件的文件名 String</returns>
澳门新萄京官方网站 9        public string PubUpFile(System.Web.UI.HtmlControls.HtmlInputFile UpFileInput,string FileSavePath,Page P)
澳门新萄京官方网站 10澳门新萄京官方网站 11        澳门新萄京官方网站 12{
澳门新萄京官方网站 13            if(UpFileInput.PostedFile.ContentLength < 3000 * 1024)
澳门新萄京官方网站 14澳门新萄京官方网站 15            澳门新萄京官方网站 16{
澳门新萄京官方网站 17                //检查提供的目录是还是不是留存,如不存在则开创
澳门新萄京官方网站 18                PubExDirectory(FileSavePath,P);
澳门新萄京官方网站 19                //获娶上传文件的公文名,并保留到钦点的目录
澳门新萄京官方网站 20                string UpFileName;
澳门新萄京官方网站 21                if(UpFileInput.PostedFile.FileName.LastIndexOf("\")    !=    -1)
澳门新萄京官方网站 22澳门新萄京官方网站 23                澳门新萄京官方网站 24{
澳门新萄京官方网站 25                    UpFileName    =    UpFileInput.PostedFile.FileName.Substring(UpFileInput.PostedFile.FileName.LastIndexOf("\"),UpFileInput.PostedFile.FileName.Length - UpFileInput.PostedFile.FileName.LastIndexOf("\"));
澳门新萄京官方网站 26                }
澳门新萄京官方网站 27                else
澳门新萄京官方网站 28澳门新萄京官方网站 29                澳门新萄京官方网站 30{
澳门新萄京官方网站 31                    UpFileName    =    "\"   UpFileInput.PostedFile.FileName;
澳门新萄京官方网站 32                }
澳门新萄京官方网站 33
澳门新萄京官方网站 34                UpFileInput.PostedFile.SaveAs(P.Server.MapPath(FileSavePath   UpFileName));
澳门新萄京官方网站 35                return FileSavePath   UpFileName;
澳门新萄京官方网站 36            }
澳门新萄京官方网站 37            else
澳门新萄京官方网站 38澳门新萄京官方网站 39            澳门新萄京官方网站 40{
澳门新萄京官方网站 41                    P.Response.Write("<Script Language="JavaScript">n<!--n alert("上传文件无法超出3M,请选用准确的文本!")n //-->n</Script>");
澳门新萄京官方网站 42                    return "";
澳门新萄京官方网站 43
澳门新萄京官方网站 44            }
澳门新萄京官方网站 45        }
澳门新萄京官方网站 46

1、FileSystemWatcher用途:

本文转自:

C#文件重命名的代码,

C#中从不重命名的点子,本人写了一个措施,来管理公事的重命名。

/// <summary>   

/// 重命名文件夹内的全体子文件夹   

/// </summary>   

/// <param name="directoryName">文件夹名称</param>   

/// <param name="newDirectoryName">新子文件夹名称格式字符串</param>   

public void RenameDirectories(string directoryName, string newDirectoryName)   

{   

  int i = 1;   

  string[] sDirectories = Directory.GetDirectories(directoryName);   

  foreach (string sDirectory in sDirectories)   

    {   

    string sDirectoryName = Path.GetFileName(sDirectory);   

    string sNewDirectoryName = string.Format(newDirectoryName, i );   

    string sNewDirectory = Path.Combine(directoryName, sNewDirectoryName);   

         Directory.Move(sDirectory, sNewDirectory);   

    }   

}  

 

 

                // 列表中的原始文本全路线名
                string oldStr = ft.FileRoute @"/" ft.FileName ft.ExName;

                // 新文件名
                string newStr = ft.FileRoute @"/" preChar   name nextChar ft.ExName;

                // 改名方法
                FileInfo fi = new FileInfo(oldStr);
                fi.MoveTo(Path.Combine(newStr));

C#中未有重命名的办法,本人写了3个情势,来拍卖文件的重命名。 ///summary /// 重命名文件夹内的全部子文件夹 //...

  // 描述:  

  FileSystem沃特cher 元件用來監視檔案系統,而當檔案系統所含有的目錄或檔案變更時,也能够运用它來回應。這讓您能夠在一定檔案或目錄被确立、修改或刪除時飞快且便于啟動商務處理流程。
注:FileSystemWatcher元件是設計來監視目錄內的變更,而不是根目錄屬性自个儿的變更。Changed:變更目錄或檔案的高低、系統屬性、上次寫入時間、上次存取時間或安全性權限時引發。

前端: 微信开采者工具

    重命名文件或目录。

  二、FileSystem沃特cher常用屬性
名称                                                说明

后端:.Net

  // 语法:

EnableRaising伊芙nts                     获取或设置3个值,该值提醒是还是不是启用此部件。

服务器:阿里云

    rename [<Drive>:][<Path>]<FileName1> <FileName2>

Filter                                               获取或安装筛选字串,用于明确在目录中监视哪些项目标文本。

那边介绍微信小程序怎样贯彻上传图片到谐和的服务器上

  // 参数:

IncludeSubdirectories                     获取或设置三个值,该值提醒是或不是监视钦命路径中的子目录。

前者代码

    

InternalBufferSize                            获取或安装内部缓存区的轻重。

 

  // 说明:

NotifyFilter                                       获取或安装监视的改造项目。

[javascript] view plain copy print?

    --> 钦定要重命名的文本或文件集的岗位和称号。文件名能够涵盖通配符(*和?)。

Path                                                 获取或设置监视的目录路线。

  1. data: {  
  2.   productInfo: {}  
  3. },  
  4. //添加Banner  
  5. bindChooiceProduct: function () {  
  6.   var that = this;  
  7.   
  8.   wx.chooseImage({  
  9.     count: 3,  //最多可以选拔的图纸总的数量  
  10.     sizeType: ['compressed'], // 能够钦定是原图仍旧压缩图,默许二者都有  
  11.     sourceType: ['album', 'camera'], // 能够钦定来源是相册依然相机,暗中同意贰者都有  
  12.     success: function (res) {  
  13.       // 再次回到选定照片的地面文件路线列表,tempFilePath能够看做img标签的src属性突显图片  
  14.       var tempFilePaths = res.tempFilePaths;  
  15.       //运转上传等待中...  
  16.       wx.showToast({  
  17.         title: '正在上传...',  
  18.         icon: 'loading',  
  19.         mask: true,  
  20.         duration: 10000  
  21.       })  
  22.       var uploadImgCount = 0;  
  23.       for (var i = 0, h = tempFilePaths.length; i < h; i ) {  
  24.         wx.uploadFile({  
  25.           url: util.getClientSetting().domainName   '/home/uploadfilenew',  
  26.           filePath: tempFilePaths[i],  
  27.           name: 'uploadfile_ant',  
  28.           formData: {  
  29.             'imgIndex': i  
  30.           },  
  31.           header: {  
  32.             "Content-Type": "multipart/form-data"  
  33.           },  
  34.           success: function (res) {  
  35.             uploadImgCount ;  
  36.             var data = JSON.parse(res.data);  
  37.             //服务器再次来到格式: { "Catalog": "testFolder", "FileName": "一.jpg", "Url": "" }  
  38.             var productInfo = that.data.productInfo;  
  39.             if (productInfo.bannerInfo == null) {  
  40.               productInfo.bannerInfo = [];  
  41.             }  
  42.             productInfo.bannerInfo.push({  
  43.               "catalog": data.Catalog,  
  44.               "fileName": data.FileName,  
  45.               "url": data.Url  
  46.             });  
  47.             that.setData({  
  48.               productInfo: productInfo  
  49.             });  
  50.   
  51.             //假如是最终一张,则藏身等待中  
  52.             if (uploadImgCount == tempFilePaths.length) {  
  53.               wx.hideToast();  
  54.             }  
  55.           },  
  56.           fail: function (res) {  
  57.             wx.hideToast();  
  58.             wx.showModal({  
  59.               title: '错误提醒',  
  60.               content: '上传图片败北',  
  61.               showCancel: false,  
  62.               success: function (res) { }  
  63.             })  
  64.           }  
  65.         });  
  66.       }  
  67.     }  
  68.   });  
  69. }  

    data: { productInfo: {} }, //添加Banner bindChooiceProduct: function () { var that = this;

    wx.chooseImage({

    count: 3,  //最多可以选择的图片总数
    sizeType: ['compressed'], // 可以指定是原图还是压缩图,默认二者都有
    sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
    success: function (res) {
      // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
      var tempFilePaths = res.tempFilePaths;
      //启动上传等待中...
      wx.showToast({
        title: '正在上传...',
        icon: 'loading',
        mask: true,
        duration: 10000
      })
      var uploadImgCount = 0;
      for (var i = 0, h = tempFilePaths.length; i < h; i  ) {
        wx.uploadFile({
          url: util.getClientSetting().domainName   '/home/uploadfilenew',
          filePath: tempFilePaths[i],
          name: 'uploadfile_ant',
          formData: {
            'imgIndex': i
          },
          header: {
            "Content-Type": "multipart/form-data"
          },
          success: function (res) {
            uploadImgCount  ;
            var data = JSON.parse(res.data);
            //服务器返回格式: { "Catalog": "testFolder", "FileName": "1.jpg", "Url": "https://test.com/1.jpg" }
            var productInfo = that.data.productInfo;
            if (productInfo.bannerInfo == null) {
              productInfo.bannerInfo = [];
            }
            productInfo.bannerInfo.push({
              "catalog": data.Catalog,
              "fileName": data.FileName,
              "url": data.Url
            });
            that.setData({
              productInfo: productInfo
            });
    
            //如果是最后一张,则隐藏等待中
            if (uploadImgCount == tempFilePaths.length) {
              wx.hideToast();
            }
          },
          fail: function (res) {
            wx.hideToast();
            wx.showModal({
              title: '错误提示',
              content: '上传图片失败',
              showCancel: false,
              success: function (res) { }
            })
          }
        });
      }
    }
    

    }); }

    --> 重命名文件时,不可能钦定新驱动器或路线。  

SynchronizingObject                        获取或设置1个目标,该目的用于封装因目录更动而发出的事件处理程式调用。

后端上传代码(将文件上盛传服务器一时文件夹内)

    --> 文件名必须是唯壹的文本名。 

  三、FileSystemWatcher常用事件

 

  // 实例:    

名称                                                说明

 

    澳门新萄京官方网站 47

Changed                                         当更换钦点Path中的文件和目录时产生。

[csharp] view plain copy print?

    澳门新萄京官方网站 48

Created                                            当在钦定Path中创造文件或目录时发出。

  1. [HttpPost]  
  2. public ContentResult UploadFileNew()  
  3. {  
  4.     UploadFileDTO model = new UploadFileDTO();  
  5.     HttpPostedFileBase file = Request.Files["uploadfile_ant"];  
  6.     if (file != null)  
  7.     {  
  8.         //公司编号 上传日期文件主目录  
  9.         model.Catalog = DateTime.Now.ToString("yyyyMMdd");  
  10.         model.ImgIndex = Convert.ToInt32(Request.Form["imgIndex"]);  
  11.   
  12.         //获取文件后缀  
  13.         string extensionName = System.IO.Path.GetExtension(file.FileName);  
  14.   
  15.         //文件名  
  16.         model.FileName = System.Guid.NewGuid().ToString("N")   extensionName;  
  17.   
  18.         //保存文件路径  
  19.         string filePathName = System.IO.Path.Combine(CommonHelper.GetConfigValue("ImageAbsoluteFolderTemp"), model.Catalog);  
  20.         if (!System.IO.Directory.Exists(filePathName))  
  21.         {  
  22.             System.IO.Directory.CreateDirectory(filePathName);  
  23.         }  
  24.         //相对路线  
  25.         string relativeUrl = CommonHelper.GetConfigValue("ImageRelativeFolderTemp");  
  26.         file.SaveAs(System.IO.Path.Combine(filePathName, model.FileName));  
  27.   
  28.         //获取目前文件相对完好路径  
  29.         model.Url = System.IO.Path.Combine(relativeUrl, model.Catalog, model.FileName).Replace("\", "/");  
  30.     }  
  31.     return Content(Newtonsoft.Json.JsonConvert.SerializeObject(model));  
  32. }  

    [HttpPost] public ContentResult UploadFileNew() {

    UploadFileDTO model = new UploadFileDTO();
    HttpPostedFileBase file = Request.Files["uploadfile_ant"];
    if (file != null)
    {
        //公司编号 上传日期文件主目录
        model.Catalog = DateTime.Now.ToString("yyyyMMdd");
        model.ImgIndex = Convert.ToInt32(Request.Form["imgIndex"]);
    
        //获取文件后缀
        string extensionName = System.IO.Path.GetExtension(file.FileName);
    
        //文件名
        model.FileName = System.Guid.NewGuid().ToString("N")   extensionName;
    
        //保存文件路径
        string filePathName = System.IO.Path.Combine(CommonHelper.GetConfigValue("ImageAbsoluteFolderTemp"), model.Catalog);
        if (!System.IO.Directory.Exists(filePathName))
        {
            System.IO.Directory.CreateDirectory(filePathName);
        }
        //相对路径
        string relativeUrl = CommonHelper.GetConfigValue("ImageRelativeFolderTemp");
        file.SaveAs(System.IO.Path.Combine(filePathName, model.FileName));
    
        //获取临时文件相对完整路径
        model.Url = System.IO.Path.Combine(relativeUrl, model.Catalog, model.FileName).Replace("\", "/");
    }
    return Content(Newtonsoft.Json.JsonConvert.SerializeObject(model));
    

    }

 

Deleted                                            删除内定帕特h中的文件或目录时发出。

[csharp] view plain copy print?

Error                                                当在那之中缓存区溢出是爆发。

  1. /// <summary>  
  2. /// 上传文件 重返数据模型  
  3. /// </summary>  
  4. public class UploadFileDTO  
  5. {  
  6.     /// <summary>  
  7.     /// 目录名称  
  8.     /// </summary>  
  9.     public string Catalog { set; get; }  
  10.     /// <summary>  
  11.     /// 文件名称,包涵扩张名  
  12.     /// </summary>  
  13.     public string FileName { set; get; }  
  14.     /// <summary>  
  15.     /// 浏览路线  
  16.     /// </summary>  
  17.     public string Url { set; get; }  
  18.     /// <summary>  
  19.     /// 上传的图纸编号(提必要前端判断图片是不是全体上传完)  
  20.     /// </summary>  
  21.     public int ImgIndex { get; set; }  
  22. }  

    ///

    /// 上传文件 返回数据模型 /// public class UploadFileDTO {     ///     /// 目录名称     ///     public string Catalog { set; get; }     ///     /// 文件名称,包括扩展名     ///     public string FileName { set; get; }     ///     /// 浏览路径     ///     public string Url { set; get; }     ///     /// 上传的图片编号(提供给前端判断图片是否全部上传完)     ///     public int ImgIndex { get; set; } }

Renamed                                         重命名钦赐Path 中的文件或目录时发生。

[csharp] view plain copy print?

  四、FileSystem沃特cher中Filter屬性通配符說明
筛选字串                                            监视下列文件

  1. #region 获取配置文件Key对应Value值  
  2. /// <summary>  
  3. /// 获取配置文件Key对应Value值  
  4. /// </summary>  
  5. /// <param name="key"></param>  
  6. /// <returns></returns>  
  7. public static string GetConfigValue(string key)  
  8. {  
  9.     return ConfigurationManager.AppSettings[key].ToString();  
  10. }  
  11. #endregion  

    #region 获取配置文件Key对应Value值 ///

    /// 获取配置文件Key对应Value值 /// /// /// public static string GetConfigValue(string key) {

    return ConfigurationManager.AppSettings[key].ToString();
    

    } #endregion

*.*                                                      全部文件(预设值)。空字串("")同样监视全数文件。

安装配置文件上传文件对应的文书夹消息

*.txt                                                    具备“Txt”扩张名的全数文件。

 

*recipe.doc                                        文件名以“recipe”结尾且具有“Doc”扩张名的持有文件。

澳门新萄京官方网站微信小程序实现图片上传功能,上传文件。 

win*.xml                                              文件名以“win”伊始且具备“xml”扩张名的具有文件。 
Sales*200?.xls                                    相称下列文件:

[html] view plain copy print?

                                                            Sales July 2001.xls,Sales Aug 2002.xls,Sales March 2003.xls

  1. <appSettings>  
  2.   <!--图片权且文件夹 相对路线-->  
  3.   <add key="ImageAbsoluteFolderTemp" value="D:Imagestemp" />  
  4.   <!--图片正式公文夹 相对路线-->  
  5.   <add key="ImageAbsoluteFolderFinal" value="D:Imagesproduct" />  
  6.   
  7.   <!--图片一时半刻文件夹 绝对路线-->  
  8.   <add key="ImageRelativeFolderTemp" value=";  
  9.   <!--图片正式公文夹 相对路线-->  
  10.   <add key="ImageRelativeFolderFinal" value=";  
  11. </appSettings>  

                                                           不匹配:

PS:上传到服务器的一时半刻文件夹内,当用户点击保存才把这一个文件移动到规范目录下

                                                             Sales Now 1999.xls

 

MyReport.Doc                                       只监视MyReport.Doc

接待参预作者的微信小程序本领调换群

  五、FileSystemWatcher中NotifyFilter枚舉值說明
分子名称                                                  表明

澳门新萄京官方网站 49

Attributes                                                  文件或文件夹的品质

 

CreationTime                                            文件或文件夹的创始时间。

DirectoryName                                           目录名。

FileName                                                    文件名

LastAccess                                                文件或文件夹上次打开的年月、

LastWrite                                                   上3次向文件或文件夹写入内容的日子。

Security                                                      文件或文件夹的延安设置。

Size                                                             文件或文件夹的大大小小。
  以上可組合此枚舉的成員以監視多種更改。組合時用“|”連接。

  6、使用办法:
  在窗體中拖入FileSystem沃特cher调节項。
  設定必要用的轩然大波
  編寫事件措施

演示代码:

using System.IO;
namespace FileSystemWatcherDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
UsingFileSystemWatcher();
}
///<summary>
/// 使用FileSystemWatcher方法
///</summary>
        void UsingFileSystemWatcher()
{
//6.2
//FileSystemWatcher:侦听文件系统改造文告,并在目录或目录中的文件发出改造时引发事件。
//获取或设置要监视的目录的渠道。
            fswWatcher.Path =@"D:upload";
//获取或设置要监视的改观项目。
            fswWatcher.NotifyFilter = NotifyFilters.LastWrite|NotifyFilters.FileName|NotifyFilters.LastAccess ;
//获取或安装筛选字符串,用于分明在目录中监视哪些文件。
//此處只可以監控某一種文件,无法監控件多種文书,但足以監控全数文件
            fswWatcher.Filter ="*.doc";
//获取或安装一个值,该值提醒是还是不是监视钦赐路径中的子目录。
            fswWatcher.IncludeSubdirectories =true;
#region 6.三 觸發的风浪
//文件或目錄創建時事件
            fswWatcher.Created =new FileSystemEventHandler(fswWatcher_Created);
//文件或目錄變更時事件
            fswWatcher.Changed =new FileSystemEventHandler(fswWatcher_Changed);
//文件或目錄重命名時事件
            fswWatcher.Renamed =new RenamedEventHandler(fswWatcher_Renamed);
//文件或目錄刪除時事件
            fswWatcher.Deleted =new FileSystemEventHandler(fswWatcher_Deleted);
#endregion
//获取或设置多少个值,该值提醒是或不是启用此组件。
            fswWatcher.EnableRaisingEvents =true;
}
#region 陆.四 觸發事件的措施
///<summary>
/// 文件或目錄創建時事件措施
///</summary>
///<param name="sender"></param>
///<param name="e"></param>
        void fswWatcher_Created(object sender, FileSystemEventArgs e)
{
MessageBox.Show("有新文件");
}
///<summary>
/// 文件或目錄變更時事件的点子
///</summary>
///<param name="sender"></param>
///<param name="e"></param>
        void fswWatcher_Changed(object sender, FileSystemEventArgs e)
{
}
///<summary>
/// 文件或目錄重命名時事件的诀要
///</summary>
///<param name="sender"></param>
///<param name="e"></param>
        void fswWatcher_Renamed(object sender, RenamedEventArgs e)
{
}
///<summary>
/// 文件或目錄刪除時事件的措施
///</summary>
///<param name="sender"></param>
///<param name="e"></param>
        void fswWatcher_Deleted(object sender, FileSystemEventArgs e)
{
}
#endregion
}
}

本文由澳门新萄京官方网站发布于澳门新萄京官方网站,转载请注明出处:澳门新萄京官方网站微信小程序实现图片上传功

关键词: