创建隐藏文件夹的问题

本文关键字:问题 文件夹 隐藏文件 隐藏 创建 | 更新日期: 2023-09-27 18:20:15

我想创建一个应该隐藏的文件夹,为此我编写了类似的代码

 string path = @"E:'newfolder";  
 if (!Directory.Exists(path))
 {
    DirectoryInfo di = Directory.CreateDirectory(path);
    if ((di.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden)
     {  
      di.Attributes |= FileAttributes.Hidden;
     }
 }

但是文件夹仍然可见,我不想更改窗口上的属性,所以我应该怎么做

创建隐藏文件夹的问题

您的代码很好。确保在"文件夹选项"中选择了"不显示隐藏的文件、文件夹或驱动器"。(控制面板,单击外观和个性化,然后单击文件夹选项。)

或者,您可以将文件夹属性设置为隐藏和系统,如下所示。然后,只有当您在文件夹选项中设置"显示隐藏的文件、文件夹或驱动器"并取消选中"隐藏受保护的操作系统文件(推荐)"时,它才会可见。

此外,如果目录已经存在,则您的方法将不起作用。因此,我为if条件语句添加了else部分,以更改现有文件夹的属性。

string path = @"E:'newfolder";
if (!Directory.Exists(path))
{
   DirectoryInfo di = Directory.CreateDirectory(path);
   if ((di.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden)
   {
     di.Attributes = FileAttributes.System|FileAttributes.Hidden;//set attributes to System and Hidden.
   }
}
else
{
   //set attributes if the directory is already exists.
   DirectoryInfo di = new DirectoryInfo(path);
   if ((di.Attributes & FileAttributes.Hidden) != FileAttributes.Hidden)
   {
     di.Attributes = FileAttributes.Hidden;
   }
}