Csharp/CSharp Tutorial/File Directory Stream/File Attribute

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

FileAttributes enumeration

<source lang="csharp">using System; using System.Windows.Forms; using System.IO; class MainClass {

 public static void DecipherAttributes(FileAttributes f) 
 {
   if ((f & FileAttributes.Archive) == FileAttributes.Archive)
     Console.WriteLine("Archive");
   if ((f & FileAttributes.rupressed) == FileAttributes.rupressed)
     Console.WriteLine("Compressed");
   if ((f & FileAttributes.Device) == FileAttributes.Device)
     Console.WriteLine("Device");
   if ((f & FileAttributes.Directory)   == FileAttributes.Directory)
     Console.WriteLine("Directory");
   if ((f & FileAttributes.Encrypted)  == FileAttributes.Encrypted)
     Console.WriteLine("Encrypted");
   if ((f & FileAttributes.Hidden)  == FileAttributes.Hidden)
     Console.WriteLine("Hidden");
   if ((f & FileAttributes.NotContentIndexed)  == FileAttributes.NotContentIndexed)
     Console.WriteLine("NotContentIndexed");
   if ((f & FileAttributes.Offline)  == FileAttributes.Offline)
     Console.WriteLine("Offline");
   if ((f & FileAttributes.ReadOnly)  == FileAttributes.ReadOnly)
     Console.WriteLine("ReadOnly");
   if ((f & FileAttributes.ReparsePoint)  == FileAttributes.ReparsePoint)
     Console.WriteLine("ReparsePoint");
   if ((f & FileAttributes.SparseFile)  == FileAttributes.SparseFile)
     Console.WriteLine("SparseFile");
   if ((f & FileAttributes.System)  == FileAttributes.System)
     Console.WriteLine("System");
   if ((f & FileAttributes.Temporary)  == FileAttributes.Temporary)
     Console.WriteLine("Temporary");
 }
 public static void Main() 
 {
   OpenFileDialog dlgOpen = new OpenFileDialog();
   if (dlgOpen.ShowDialog() == DialogResult.OK)
   {
     FileAttributes f = File.GetAttributes(dlgOpen.FileName);
     Console.WriteLine("Filename " + dlgOpen.FileName + " has attributes:");
     DecipherAttributes(f);
   }
 }

}</source>

FileAttributes.ReadOnly

<source lang="csharp">using System; using System.IO; static class MainClass {

   static void Main()
   {
       FileInfo file = new FileInfo("data.txt");
       Console.WriteLine(file.Attributes.ToString());
       // This test fails, because other attributes are set.
       if (file.Attributes == FileAttributes.ReadOnly)
       {
           Console.WriteLine("File is read-only (faulty test).");
       }
       if ((file.Attributes & FileAttributes.ReadOnly) == FileAttributes.ReadOnly)
       {
           Console.WriteLine("File is read-only (correct test).");
       }
   }

}</source>

Archive, NotContentIndexed