ASP.NET设计网络硬盘之两重要类

  要进行“网络硬盘”功能设计,首先要熟悉.NET中处理文件和文件夹的操作。File类和Directory类是其中最主要的两个类。了解它们将对后面功能的实现提供很大的便利。


  System.IO.File类和System.IO.FileInfo类


  在设计和实现“网络硬盘”的过程中,将大量地使用和文件系统操作相关的内容。故本节先对和文件系统相关的两个.NET类进行简要介绍。


  System.IO.File类和System.IO.FileInfo类主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间。下面通过程序实例来介绍其主要属性和方法。


  (1) 文件打开方法:File.Open


  该方法的声明如下:


  


  public static FileStream Open(string path,FileMode mode)


  下面的代码打开存放在c:tempuploads目录下名称为newFile.txt文件,并在该文件中写入hello。


  


  private void OpenFile()


  {


   FileStream.TextFile=File.Open(@"c:tempuploadsnewFile.txt",FileMode.Append);


   byte [] Info = {(byte)'h',(byte)'e',(byte)'l',(byte)'l',(byte)'o'};


   TextFile.Write(Info,0,Info.Length);


   TextFile.Close();


  }


  (2) 文件创建方法:File.Create


  该方法的声明如下:


  


  public static FileStream Create(string path;)


  下面的代码演示如何在c:tempuploads下创建名为newFile.txt的文件。


  由于File.Create方法默认向所有用户授予对新文件的完全读/写访问权限,所以文件是用读/写访问权限打开的,必须关闭后才能由其他应用程序打开。为此,所以需要使用FileStream类的Close方法将所创建的文件关闭。


  


  private void MakeFile()


  {


   FileStream NewText=File.Create(@"c:tempuploadsnewFile.txt");


   NewText.Close();


  }


  (3) 文件删除方法:File.Delete


  该方法声明如下:


  


  public static void Delete(string path);


  下面的代码演示如何删除c:tempuploads目录下的newFile.txt文件。


  


  private void DeleteFile()


  {


   File.Delete(@"c:tempuploadsnewFile.txt");


  }


  (4) 文件复制方法:File.Copy


  该方法声明如下:


  


  public static void Copy(string sourceFileName,string destFileName,bool overwrite);


  下面的代码将c:tempuploadsnewFile.txt复制到c:tempuploadsBackUp.txt。


  由于Cope方法的OverWrite参数设为true,所以如果BackUp.txt文件已存在的话,将会被复制过去的文件所覆盖。


  


  private void CopyFile()


  {


   File.Copy(@"c:tempuploadsnewFile.txt",@"c:tempuploadsBackUp.txt",true);


  }


  (5) 文件移动方法:File.Move