none
C# 查看所有的隐藏文件 RRS feed

  • 问题

  • 怎样在WINFORM中扫描文件,并找出所有的隐藏文件?(注:此时,系统设置的是隐藏文件不显示!)

    2011年5月13日 2:53

答案

  • Hello:)

     static void Main(string[] Args)
            {

               //假设扫描C:\Test中——

                string[] hiddenfiles = Directory.GetFiles("C:\\Test\\", "*.*", SearchOption.AllDirectories);

              
                foreach (var item in hiddenfiles)
                {
                    if ((new FileInfo(item).Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)   //必须进行与运算,因为默认文件是“Hidden”+归档(二进制11)。而Hidden是10.因此与运算才可以判断
                    {
                        Console.WriteLine(item);
                    }
                }

            }


    如果你有其它意见或私下交流,请发送邮件到:maledong@qq.com;或者请QQ我
    下载MSDN桌面工具(Vista,Win7)
    下载Technet桌面小工具(Vista,Win7)
    慈善点击,点击此处
    2011年5月13日 3:14
    版主
  •       DirectoryInfo directoryInfo = new DirectoryInfo(@"D:\TEST");
          FileInfo[] fileList = directoryInfo.GetFiles("*.*", SearchOption.AllDirectories);
          foreach (FileInfo File in fileList)
          {
            if ((File.Attributes | FileAttributes.Hidden) == File.Attributes)
            {
              this.listBoxFileList.Items.Add(File.FullName);
            }
          }
    

    歡迎參觀我的Blog.NET菜鳥自救會
    2011年5月13日 3:16

全部回复

  • Hello:)

     static void Main(string[] Args)
            {

               //假设扫描C:\Test中——

                string[] hiddenfiles = Directory.GetFiles("C:\\Test\\", "*.*", SearchOption.AllDirectories);

              
                foreach (var item in hiddenfiles)
                {
                    if ((new FileInfo(item).Attributes & FileAttributes.Hidden) == FileAttributes.Hidden)   //必须进行与运算,因为默认文件是“Hidden”+归档(二进制11)。而Hidden是10.因此与运算才可以判断
                    {
                        Console.WriteLine(item);
                    }
                }

            }


    如果你有其它意见或私下交流,请发送邮件到:maledong@qq.com;或者请QQ我
    下载MSDN桌面工具(Vista,Win7)
    下载Technet桌面小工具(Vista,Win7)
    慈善点击,点击此处
    2011年5月13日 3:14
    版主
  •       DirectoryInfo directoryInfo = new DirectoryInfo(@"D:\TEST");
          FileInfo[] fileList = directoryInfo.GetFiles("*.*", SearchOption.AllDirectories);
          foreach (FileInfo File in fileList)
          {
            if ((File.Attributes | FileAttributes.Hidden) == File.Attributes)
            {
              this.listBoxFileList.Items.Add(File.FullName);
            }
          }
    

    歡迎參觀我的Blog.NET菜鳥自救會
    2011年5月13日 3:16