Freigeben über


File.SetAttributes Methode

Definition

Überlädt

SetAttributes(SafeFileHandle, FileAttributes)

Legt den angegebenen FileAttributes der Datei oder des Verzeichnisses fest, die zugeordnet ist fileHandle.

SetAttributes(String, FileAttributes)

Legt die angegebenen FileAttributes der Datei im angegebenen Pfad fest.

SetAttributes(SafeFileHandle, FileAttributes)

Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs

Legt den angegebenen FileAttributes der Datei oder des Verzeichnisses fest, die zugeordnet ist fileHandle.

public:
 static void SetAttributes(Microsoft::Win32::SafeHandles::SafeFileHandle ^ fileHandle, System::IO::FileAttributes fileAttributes);
public static void SetAttributes (Microsoft.Win32.SafeHandles.SafeFileHandle fileHandle, System.IO.FileAttributes fileAttributes);
static member SetAttributes : Microsoft.Win32.SafeHandles.SafeFileHandle * System.IO.FileAttributes -> unit
Public Shared Sub SetAttributes (fileHandle As SafeFileHandle, fileAttributes As FileAttributes)

Parameter

fileHandle
SafeFileHandle

Ein SafeFileHandle auf die Datei oder das Verzeichnis, für die fileAttributes festgelegt werden soll.

fileAttributes
FileAttributes

Eine bitweise Kombination der Enumerationswerte.

Ausnahmen

fileHandle ist null.

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Hinweise

Es ist nicht möglich, die Komprimierungs-status eines File Objekts mit der SetAttributes(SafeFileHandle, FileAttributes) -Methode zu ändern.

Gilt für:

SetAttributes(String, FileAttributes)

Quelle:
File.cs
Quelle:
File.cs
Quelle:
File.cs

Legt die angegebenen FileAttributes der Datei im angegebenen Pfad fest.

public:
 static void SetAttributes(System::String ^ path, System::IO::FileAttributes fileAttributes);
public static void SetAttributes (string path, System.IO.FileAttributes fileAttributes);
static member SetAttributes : string * System.IO.FileAttributes -> unit
Public Shared Sub SetAttributes (path As String, fileAttributes As FileAttributes)

Parameter

path
String

Der Pfad zur Datei.

fileAttributes
FileAttributes

Eine bitweise Kombination der Enumerationswerte.

Ausnahmen

.NET Framework und .NET Core-Versionen älter als 2.1: path ist leer, enthält nur Leerzeichen, enthält ungültige Zeichen oder das Dateiattribute ist ungültig.

Der angegebene Pfad und/oder Dateiname überschreiten die vom System definierte maximale Länge.

path weist ein ungültiges Format auf.

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).

Die Datei kann nicht gefunden werden.

path hat eine schreibgeschützte Datei angegeben.

- oder -

Dieser Vorgang wird von der aktuellen Plattform nicht unterstützt.

- oder -

path hat ein Verzeichnis angegeben.

- oder -

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

Beispiele

Im folgenden Beispiel werden die GetAttributes Methoden und SetAttributes veranschaulicht, indem die Archive Attribute und Hidden auf eine Datei angewendet werden.

using namespace System;
using namespace System::IO;
using namespace System::Text;
int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   
   // Create the file if it does not exist.
   if (  !File::Exists( path ) )
   {
      File::Create( path );
   }

   if ( (File::GetAttributes( path ) & FileAttributes::Hidden) == FileAttributes::Hidden )
   {
      
      // Show the file.
      File::SetAttributes(path, File::GetAttributes( path ) & ~FileAttributes::Hidden);
      Console::WriteLine( "The {0} file is no longer hidden.", path );
   }
   else
   {
      
      // Hide the file.
      File::SetAttributes( path, static_cast<FileAttributes>(File::GetAttributes( path ) | FileAttributes::Hidden) );
      Console::WriteLine( "The {0} file is now hidden.", path );
   }
}
using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // Create the file if it does not exist.
        if (!File.Exists(path))
        {
            File.Create(path);
        }

        FileAttributes attributes = File.GetAttributes(path);

        if ((attributes & FileAttributes.Hidden) == FileAttributes.Hidden)
        {
            // Show the file.
            attributes = RemoveAttribute(attributes, FileAttributes.Hidden);
            File.SetAttributes(path, attributes);
            Console.WriteLine("The {0} file is no longer hidden.", path);
        }
        else
        {
            // Hide the file.
            File.SetAttributes(path, File.GetAttributes(path) | FileAttributes.Hidden);
            Console.WriteLine("The {0} file is now hidden.", path);
        }
    }

    private static FileAttributes RemoveAttribute(FileAttributes attributes, FileAttributes attributesToRemove)
    {
        return attributes & ~attributesToRemove;
    }
}
open System.IO
open System.Text

let removeAttribute attributes attributesToRemove = attributes &&& ~~~attributesToRemove

let path = @"c:\temp\MyTest.txt"

// Create the file if it does not exist.
if File.Exists path |> not then
    File.Create path |> ignore

let attributes = File.GetAttributes path

if attributes &&& FileAttributes.Hidden = FileAttributes.Hidden then
    // Show the file.
    let attributes =
        removeAttribute attributes FileAttributes.Hidden

    File.SetAttributes(path, attributes)
    printfn $"The {path} file is no longer hidden."
else
    // Hide the file.
    File.SetAttributes(path, File.GetAttributes path ||| FileAttributes.Hidden)
    printfn $"The {path} file is now hidden."
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        ' Create the file if it does not exist.
        If File.Exists(path) = False Then
            File.Create(path)
        End If

        Dim attributes As FileAttributes
        attributes = File.GetAttributes(path)

        If (attributes And FileAttributes.Hidden) = FileAttributes.Hidden Then
            ' Show the file.
            attributes = RemoveAttribute(attributes, FileAttributes.Hidden)
            File.SetAttributes(path, attributes)
            Console.WriteLine("The {0} file is no longer hidden.", path)
        Else
            ' Hide the file.
            File.SetAttributes(path, File.GetAttributes(path) Or FileAttributes.Hidden)
            Console.WriteLine("The {0} file is now hidden.", path)
        End If
    End Sub

    Public Shared Function RemoveAttribute(ByVal attributes As FileAttributes, ByVal attributesToRemove As FileAttributes) As FileAttributes
        Return attributes And (Not attributesToRemove)
    End Function
End Class

Hinweise

Der path Parameter darf relative oder absolute Pfadinformationen angeben. Relative Pfadinformationen werden relativ zum aktuellen Arbeitsverzeichnis interpretiert. Informationen zum Abrufen des aktuellen Arbeitsverzeichnisses finden Sie unter GetCurrentDirectory.

Bestimmte Dateiattribute wie Hidden und ReadOnlykönnen kombiniert werden. Andere Attribute, z Normal. B. , müssen allein verwendet werden.

Es ist nicht möglich, die Komprimierungs-status eines File Objekts mit der SetAttributes -Methode zu ändern.

Eine Liste der allgemeinen E/A-Aufgaben finden Sie unter Allgemeine E/A-Aufgaben.

Weitere Informationen

Gilt für: