韦德国际官网1946 48

上传文件,文件操作命令

Rename 命令:  

韦德国际官网1946 1韦德国际官网1946 2        /**//// <summary>
韦德国际官网1946 3        /// 上传文件,上传成功后返回一个 string 型的所上传文件名 上传文件不能超过3.5M
韦德国际官网1946 4        /// </summary>
韦德国际官网1946 5        /// <param name=”UpFileInput”>上传文件所用的控件的ID</param>
韦德国际官网1946 6        /// <param name=”FileSavePath”>上传文件保存的路径(与上传页的相对路径)</param>
韦德国际官网1946 7        /// <param name=”P”>Web窗体页</param>
韦德国际官网1946 8        /// <returns>上传文件的文件名 String</returns>
韦德国际官网1946 9        public string PubUpFile(System.Web.UI.HtmlControls.HtmlInputFile UpFileInput,string FileSavePath,Page P)
韦德国际官网1946 10韦德国际官网1946 11        韦德国际官网1946 12{
韦德国际官网1946 13            if(UpFileInput.PostedFile.ContentLength < 3000 * 1024)
韦德国际官网1946 14韦德国际官网1946 15            韦德国际官网1946 16{
韦德国际官网1946 17                //检查提供的目录是否存在,如不存在则创建
韦德国际官网1946 18                PubExDirectory(FileSavePath,P);
韦德国际官网1946 19                //获娶上传文件的文件名,并保存到指定的目录
韦德国际官网1946 20                string UpFileName;
韦德国际官网1946 21                if(UpFileInput.PostedFile.FileName.LastIndexOf(“\”)    !=    -1)
韦德国际官网1946 22韦德国际官网1946 23                韦德国际官网1946 24{
韦德国际官网1946 25                    UpFileName    =    UpFileInput.PostedFile.FileName.Substring(UpFileInput.PostedFile.FileName.LastIndexOf(“\”),UpFileInput.PostedFile.FileName.Length – UpFileInput.PostedFile.FileName.LastIndexOf(“\”));
韦德国际官网1946 26                }
韦德国际官网1946 27                else
韦德国际官网1946 28韦德国际官网1946 29                韦德国际官网1946 30{
韦德国际官网1946 31                    UpFileName    =    “\” + UpFileInput.PostedFile.FileName;
韦德国际官网1946 32                }
韦德国际官网1946 33
韦德国际官网1946 34                UpFileInput.PostedFile.SaveAs(P.Server.MapPath(FileSavePath + UpFileName));
韦德国际官网1946 35                return FileSavePath + UpFileName;
韦德国际官网1946 36            }
韦德国际官网1946 37            else
韦德国际官网1946 38韦德国际官网1946 39韦德国际官网1946,            韦德国际官网1946 40{
韦德国际官网1946 41                    P.Response.Write(“<Script Language=”JavaScript”>n<!–n alert(“上传文件不能大于3M,请选择正确的文件!”)n //–>n</Script>”);
韦德国际官网1946 42                    return “”;
韦德国际官网1946 43
韦德国际官网1946 44            }
韦德国际官网1946 45        }
韦德国际官网1946 46

1、FileSystemWatcher用途:

  //
描述: 
 

  FileSystemWatcher
元件用來監視檔案系統,而當檔案系統所包含的目錄或檔案變更時,也可以利用它來回應。這讓您能夠在特定檔案或目錄被建立、修改或刪除時快速且容易啟動商務處理流程。
注:FileSystemWatcher元件是設計來監視目錄內的變更,而不是根目錄屬性本身的變更。Changed:變更目錄或檔案的大小、系統屬性、上次寫入時間、上次存取時間或安全性權限時引發。

    重命名文件或目录。

  2、FileSystemWatcher常用屬性
名称                                                说明

  //
语法:

EnableRaisingEvents                    
获取或设置一个值,该值指示是否启用此元件。

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

Filter                                               获取或设置筛选字串,用于确定在目录中监视哪些类型的文件。

  //
参数:

IncludeSubdirectories                    
获取或设置一个值,该值指示是否监视指定路径中的子目录。

    

InternalBufferSize                           
获取或设置内部缓存区的大小。

  //
说明:

NotifyFilter                                      
获取或设置监视的更改类型。

    –>
指定要重命名的文件或文件集的位置和名称。文件名可以包含通配符(*和?)。

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

    –> 重命名文件时,不能指定新驱动器或路径。  

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

    –> 文件名必须是唯一的文件名。 

  3、FileSystemWatcher常用事件

  //
实例:    

名称                                                说明

 
  韦德国际官网1946 47

Changed                                         当更改指定Path中的文件和目录时发生。

    韦德国际官网1946 48

Created                                           
当在指定Path中创建文件或目录时发生。

 

Deleted                                           
删除指定Path中的文件或目录时发生。

Error                                               
当内部缓存区溢出是发生。

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

  4、FileSystemWatcher中Filter屬性通配符說明
筛选字串                                            监视下列文件

*.*                                                     
所有文件(预设值)。空字串(””)同样监视所有文件。

*.txt                                                   
具有“Txt”扩展名的所有文件。

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

win*.xml                                              文件名以“win”开头且具有“xml”扩展名的所有文件。 
Sales*200?.xls                                    匹配下列文件:

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

                                                           不匹配:

                                                             Sales Now
1999.xls

MyReport.Doc                                       只监视MyReport.Doc

  5、FileSystemWatcher中NotifyFilter枚舉值說明
成员名称                                                  说明

Attributes                                                 
文件或文件夹的属性

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

DirectoryName                                           目录名。

FileName                                                    文件名

LastAccess                                               
文件或文件夹上次打开的时间、

LastWrite                                                  
上一次向文件或文件夹写入内容的日期。

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

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

  6、使用方法:
  在窗體中拖入FileSystemWatcher控制項。
  設定需要用的事件
  編寫事件方法

示例代码:

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.3 觸發的事件
//文件或目錄創建時事件
            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 6.4 觸發事件的方法
///<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
}
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注