File.SetAttributes-Methode

Legt die angegebenen FileAttributes der Datei im angegebenen Pfad fest.

Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared Sub SetAttributes ( _
    path As String, _
    fileAttributes As FileAttributes _
)
'Usage
Dim path As String
Dim fileAttributes As FileAttributes

File.SetAttributes(path, fileAttributes)
public static void SetAttributes (
    string path,
    FileAttributes fileAttributes
)
public:
static void SetAttributes (
    String^ path, 
    FileAttributes fileAttributes
)
public static void SetAttributes (
    String path, 
    FileAttributes fileAttributes
)
public static function SetAttributes (
    path : String, 
    fileAttributes : FileAttributes
)

Parameter

  • path
    Der Pfad zur Datei.
  • fileAttributes
    Die gewünschten FileAttributes, z. B. Hidden, ReadOnly, Normal und Archive.

Ausnahmen

Ausnahmetyp Bedingung

ArgumentException

path ist leer, besteht nur aus Leerraum, enthält ungültige Zeichen, oder das Dateiattribut ist ungültig.

PathTooLongException

Der angegebene Pfad und/oder der Dateiname überschreiten die vom System vorgegebene Höchstlänge. Beispielsweise müssen Pfade auf Windows-Plattformen weniger als 248 Zeichen und Dateinamen weniger als 260 Zeichen haben.

NotSupportedException

Das Format von path ist ungültig.

DirectoryNotFoundException

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

FileNotFoundException

Die Datei kann nicht gefunden werden.

UnauthorizedAccessException

path gibt eine schreibgeschützte Datei an.

- oder -

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

- oder -

path gibt ein Verzeichnis an.

- oder -

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

Hinweise

Mit dem path-Parameter dürfen relative oder absolute Pfadinformationen angegeben werden. Relative Pfadinformationen werden relativ zum aktuellen Arbeitsverzeichnis interpretiert. Informationen über das Abrufen des aktuellen Arbeitsverzeichnisses finden Sie unter GetCurrentDirectory.

Es ist nicht möglich, den Komprimierungsstatus eines File-Objekts mit der SetAttributes-Methode zu ändern.

Ein Beispiel für die Verwendung dieser Klasse finden Sie im Beispielabschnitt. In der folgenden Tabelle sind Beispiele für andere typische oder verwandte E/A-Aufgaben aufgeführt.

Aufgabe

Beispiel in diesem Thema

Erstellen einer Textdatei.

Gewusst wie: Schreiben von Text in eine Datei

In eine Textdatei schreiben.

Gewusst wie: Schreiben von Text in eine Datei

Aus einer Textdatei lesen.

Gewusst wie: Lesen aus einer Textdatei

Text an eine Datei anfügen.

Gewusst wie: Öffnen und Anfügen an eine Protokolldatei

File.AppendText

FileInfo.AppendText

Umbenennen oder Verschieben einer Datei.

File.Move

FileInfo.MoveTo

Abrufen der Attribute einer Datei.

File.GetAttributes

Lesen aus einer Binärdatei.

Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei

In eine Binärdatei schreiben.

Gewusst wie: Lesen und Schreiben einer neu erstellten Datendatei

Beispiel

Im folgenden Beispiel werden die GetAttributes-Methode und die SetAttributes-Methode durch Anwenden des Archive-Attributs und des Hidden-Attributs auf eine Datei veranschaulicht.

Imports System
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

        If (File.GetAttributes(path) And FileAttributes.Hidden) = FileAttributes.Hidden Then
            ' Show the file.
            File.SetAttributes(path, FileAttributes.Archive)
            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
End Class
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);
        }

        if ((File.GetAttributes(path) & FileAttributes.Hidden) == FileAttributes.Hidden) 
        {
            // Show the file.
            File.SetAttributes(path, FileAttributes.Archive);
            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);
        }
    }
}
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, FileAttributes::Archive );
      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 );
   }
}
import System.*;
import System.IO.*;
import System.Text.*;

class Test
{
    public static void main(String[] args)
    {
        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).
            Equals(FileAttributes.Hidden)) {
            // Show the file.
            File.SetAttributes(path, FileAttributes.Archive);
            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);
        }
    } //main
} //Test

.NET Framework-Sicherheit

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

File-Klasse
File-Member
System.IO-Namespace

Weitere Ressourcen

Datei- und Stream-E/A
Gewusst wie: Lesen aus einer Textdatei
Gewusst wie: Schreiben von Text in eine Datei