wolfmaster 发表于 2013-2-5 01:30:22

C#文件操作

using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.IO;

public partial class _Default : System.Web.UI.Page
{
    private bool bExist;
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
      try
      {
            if (tbInput.Text.Trim() == "")
            {
                tbInput.Text = "不存在此文件!";
                return;
            }
            string[] drives = System.IO.Directory.GetLogicalDrives();

            foreach (string str in drives)
            {

                if (ProcessDirectory(str))
                  break;
            }
            if (!bExist)
                tbInput.Text = "不存在此文件!";
      }
      catch (System.IO.IOException)
      {
            Response.Write("I/O错误!");
      }
      catch (System.Security.SecurityException)
      {
            Response.Write("没有访问权限!");
      }
    }
    public bool ProcessDirectory(string targetDirectory)
    {
      try
      {
            // Process the list of files found in the directory
            string[] fileEntries = Directory.GetFiles(targetDirectory);
            foreach (string fileName in fileEntries)
            {
                if (ProcessFile(fileName))
                  return true;

            }

            // Recurse into subdirectories of this directory
            string[] subdirectoryEntries = Directory.GetDirectories(targetDirectory);
            foreach (string subdirectory in subdirectoryEntries)
            {
                if (ProcessDirectory(subdirectory))
                  return true;
            }
            return false;
      }
      catch(Exception)
      {
      return false;
      }
    }
    public bool ProcessFile(string strFileName)
    {
      if (Path.GetFileName(strFileName).ToLower() == tbInput.Text.Trim().ToLower())
      {
            tbInput.Text = strFileName.ToLower();
            bExist = true;
            return true;
      }
      else
            return false;
    }

}
页: [1]
查看完整版本: C#文件操作