Condividi tramite


File.SetAttributes Metodo

Definizione

Overload

SetAttributes(SafeFileHandle, FileAttributes)

Imposta l'oggetto specificato FileAttributes del file o della directory associata a fileHandle.

SetAttributes(String, FileAttributes)

Imposta l'enumerazione FileAttributes del file nel percorso specificato.

SetAttributes(SafeFileHandle, FileAttributes)

Origine:
File.cs
Origine:
File.cs
Origine:
File.cs

Imposta l'oggetto specificato FileAttributes del file o della directory associata a 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)

Parametri

fileHandle
SafeFileHandle

Oggetto SafeFileHandle per il file o la directory per cui fileAttributes deve essere impostato.

fileAttributes
FileAttributes

Combinazione bit per bit dei valori dell'enumerazione.

Eccezioni

fileHandle è null.

Il chiamante non dispone dell'autorizzazione richiesta.

Commenti

Non è possibile modificare lo stato di compressione di un File oggetto utilizzando il SetAttributes(SafeFileHandle, FileAttributes) metodo .

Si applica a

SetAttributes(String, FileAttributes)

Origine:
File.cs
Origine:
File.cs
Origine:
File.cs

Imposta l'enumerazione FileAttributes del file nel percorso specificato.

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)

Parametri

path
String

Percorso del file.

fileAttributes
FileAttributes

Combinazione bit per bit dei valori dell'enumerazione.

Eccezioni

.NET Framework e versioni di .NET Core precedenti alla 2.1: path è vuoto, contiene solo spazi vuoti, contiene caratteri non validi o l'attributo di file non è valido.

Il percorso specificato, il nome file o entrambi superano la lunghezza massima definita dal sistema.

Il formato di path non è valido.

Il percorso specificato non è valido, ad esempio si trova in un'unità non mappata.

Impossibile trovare il file.

path specifica un file di sola lettura.

-oppure-

L'operazione non è supportata sulla piattaforma corrente.

-oppure-

path ha specificato una directory.

-oppure-

Il chiamante non dispone dell'autorizzazione richiesta.

Esempio

Nell'esempio seguente vengono illustrati i GetAttributes metodi e SetAttributes applicando gli Archive attributi e Hidden a un file.

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

Commenti

Il path parametro è autorizzato a specificare informazioni relative o assolute sul percorso. Le informazioni relative sul percorso sono interpretate come relative alla directory di lavoro corrente. Per ottenere la directory di lavoro corrente, vedere GetCurrentDirectory.

Alcuni attributi di file, ad esempio Hidden e ReadOnly, possono essere combinati. Altri attributi, ad esempio Normal, devono essere usati da soli.

Non è possibile modificare lo stato di compressione di un File oggetto utilizzando il SetAttributes metodo .

Per un elenco delle attività di I/O comuni, vedere Attività di I/O comuni.

Vedi anche

Si applica a