C#文件操作方法大全

 StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt");
sw.WriteLine("追逐理想"); 
sw.WriteLine("kzlll");
sw.WriteLine(".NET笔记"); 
sw.Flush();
sw.Close(); 
string OrignFile,NewFile;
OrignFile = Server.MapPath(".")+"\\myText.txt";
NewFile = Server.MapPath(".")+"\\myTextCopy.txt";
File.Copy(OrignFile,NewFile,true);
string delFile = Server.MapPath(".")+"\\myTextCopy.txt";
File.Delete(delFile);
string OrignFile,NewFile;
OrignFile = Server.MapPath(".")+"\\myText.txt";
NewFile = Server.MapPath(".")+"\\myTextCopy.txt";
File.Move(OrignFile,NewFile);
// 创建目录c:\sixAge 
DirectoryInfo d=Directory.CreateDirectory("c:\\sixAge");
// d1指向c:\sixAge\sixAge1 
DirectoryInfo d1=d.CreateSubdirectory("sixAge1");
// d2指向c:\sixAge\sixAge1\sixAge1_1 
DirectoryInfo d2=d1.CreateSubdirectory("sixAge1_1");
// 将当前目录设为c:\sixAge 
Directory.SetCurrentDirectory("c:\\sixAge");
// 创建目录c:\sixAge\sixAge2 
Directory.CreateDirectory("sixAge2");
// 创建目录c:\sixAge\sixAge2\sixAge2_1 
Directory.CreateDirectory("sixAge2\\sixAge2_1");
<%@ Page Language=C#%>
<%@ Import namespace="System.IO"%>
<script_ runat=server>
public void DeleteFolder(string dir)
{
    if (Directory.Exists(dir)) //如果存在这个文件夹删除之 
    {
        foreach(string d in Directory.GetFileSystemEntries(dir))
        {
            if(File.Exists(d))
                File.Delete(d); //直接删除其中的文件 
            else
                DeleteFolder(d); //递归删除子文件夹 
        }
        Directory.Delete(dir); //删除已空文件夹 
        Response.Write(dir+" 文件夹删除成功"); 
    }
    else
        Response.Write(dir+" 该文件夹不存在"); //如果文件夹不存在则提示 
}
protected void Page_Load (Object sender ,EventArgs e)
{
    string Dir="D:\\gbook\\11";
    DeleteFolder(Dir); //调用函数删除文件夹 
}

 

// ======================================================
  // 实现一个静态方法将指定文件夹下面的所有内容copy到目标文件夹下面
  // 如果目标文件夹为只读属性就会报错。 
  // ======================================================

  public static void CopyDir(string srcPath,string aimPath)
  {
   try
   {
    // 检查目标目录是否以目录分割字符结束如果不是则添加之 
    if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar)
     aimPath += Path.DirectorySeparatorChar;
    // 判断目标目录是否存在如果不存在则新建之 
    if(!Directory.Exists(aimPath)) Directory.CreateDirectory(aimPath);
    // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组 
    // 如果你指向copy目标文件下面的文件而不包含目录请使用下面的方法 
    // string[] fileList = Directory.GetFiles(srcPath);
    string[] fileList = Directory.GetFileSystemEntries(srcPath);
    // 遍历所有的文件和目录 
    foreach(string file in fileList)
    {
     // 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件 
     if(Directory.Exists(file))
      CopyDir(file,aimPath+Path.GetFileName(file));
      // 否则直接Copy文件 
     else
      File.Copy(file,aimPath+Path.GetFileName(file),true);
    }
   }
   catch (Exception e)
   {
    MessageBox.Show (e.ToString());
   }
  }

 

// ======================================================
  // 实现一个静态方法将指定文件夹下面的所有内容Detele
  // 测试的时候要小心操作,删除之后无法恢复。 
  // ======================================================

  public static void DeleteDir(string aimPath)
  {
   try
   {
    // 检查目标目录是否以目录分割字符结束如果不是则添加之 
    if(aimPath[aimPath.Length-1] != Path.DirectorySeparatorChar)
     aimPath += Path.DirectorySeparatorChar;
    // 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组 
    // 如果你指向Delete目标文件下面的文件而不包含目录请使用下面的方法 
    // string[] fileList = Directory.GetFiles(aimPath);
    string[] fileList = Directory.GetFileSystemEntries(aimPath);
    // 遍历所有的文件和目录 
    foreach(string file in fileList)
    {
     // 先当作目录处理如果存在这个目录就递归Delete该目录下面的文件 
     if(Directory.Exists(file))
     {
      DeleteDir(aimPath+Path.GetFileName(file));
     }
      // 否则直接Delete文件 
     else
     {
      File.Delete (aimPath+Path.GetFileName(file));
     }
    }
    //删除文件夹 
    System.IO .Directory .Delete (aimPath,true);
   }
   catch (Exception e)
   {
    MessageBox.Show (e.ToString());
   }
  }

 

 

    /**/
    /// <summary>
    /// 获取文件列表 
    /// </summary>
    private void GetFileList()
   {
       string strCurDir,FileName,FileExt;
      
       /**////文件大小 
       long FileSize;
     
      /**////最后修改时间; 
      DateTime FileModify;
  
      /**////初始化 
      if(!IsPostBack)
      {
          /**////初始化时,默认为当前页面所在的目录 
          strCurDir = Server.MapPath(".");
          lblCurDir.Text = strCurDir;
          txtCurDir.Text = strCurDir;
      }
      else
      {
          strCurDir = txtCurDir.Text;
          txtCurDir.Text = strCurDir;
          lblCurDir.Text = strCurDir;
      }
      FileInfo fi;
      DirectoryInfo dir;
      TableCell td;
      TableRow tr;
      tr = new TableRow();
     
      /**////动态添加单元格内容 
      td = new TableCell();
      td.Controls.Add(new LiteralControl("文件名")); 
      tr.Cells.Add(td);
     td = new TableCell();
     td.Controls.Add(new LiteralControl("文件类型")); 
     tr.Cells.Add(td);
     td = new TableCell();
     td.Controls.Add(new LiteralControl("文件大小")); 
     tr.Cells.Add(td);
     td = new TableCell();
     td.Controls.Add(new LiteralControl("最后修改时间"));
     tr.Cells.Add(td);
 
     tableDirInfo.Rows.Add(tr);
    
     /**////针对当前目录建立目录引用对象 
     DirectoryInfo dirInfo = new DirectoryInfo(txtCurDir.T
    
     /**////循环判断当前目录下的文件和目录 
     foreach(FileSystemInfo fsi in dirInfo.GetFileSystemIn
     {
         FileName = "";
         FileExt = "";
         FileSize =  ;
        
         /**////如果是文件 
         if(fsi is FileInfo)
         {
             fi = (FileInfo)fsi;
            
             /**////取得文件名 
             FileName = fi.Name;
            
             /**////取得文件的扩展名 
             FileExt = fi.Extension;
            
             /**////取得文件的大小 
             FileSize = fi.Length;
            
             /**////取得文件的最后修改时间 
             FileModify = fi.LastWriteTime;
         }
 
         /**////否则是目录 
         else
         {
             dir = (DirectoryInfo)fsi;
            
             /**////取得目录名 
             FileName = dir.Name;
             
              /**////取得目录的最后修改时间 
              FileModify = dir.LastWriteTime;
             
              /**////设置文件的扩展名为"文件夹" 
              FileExt = "文件夹"; 
          }
         
          /**////动态添加表格内容 
          tr = new TableRow();
          td = new TableCell();
          td.Controls.Add(new LiteralControl(FileName));
          tr.Cells.Add(td);
          td = new TableCell();
          td.Controls.Add(new LiteralControl(FileExt));
         tr.Cells.Add(td);
         td = new TableCell();
         td.Controls.Add(new LiteralControl(FileSize.ToString()+"字节")); 
         tr.Cells.Add(td);
         td = new TableCell();
         td.Controls.Add(new LiteralControl(FileModify.ToString("yyyy-mm-dd hh:mm:ss")));
         tr.Cells.Add(td);
         tableDirInfo.Rows.Add(tr);
     }
 }

 

你可能感兴趣的:(C++,c,.net,单元测试,C#)