Sdílet prostřednictvím


FileInfo.IsReadOnly Vlastnost

Definice

Získá nebo nastaví hodnotu, která určuje, zda je aktuální soubor jen pro čtení.

public:
 property bool IsReadOnly { bool get(); void set(bool value); };
public bool IsReadOnly { get; set; }
member this.IsReadOnly : bool with get, set
Public Property IsReadOnly As Boolean

Hodnota vlastnosti

truepokud je aktuální soubor jen pro čtení nebo nebyl nalezen; v opačném případě . false

Výjimky

Soubor popsaný aktuálním FileInfo objektem nebyl nalezen při pokusu o nastavení IsReadOnly vlastnost. (Všimněte si, že získání této vlastnosti pro neexistující soubor nevyvolá výjimku, ale spíše vrátí true.)

Při otevírání souboru došlo k vstupně-výstupní chybě.

Tato operace není na aktuální platformě podporovaná.

nebo

Volající nemá požadované oprávnění.

Uživatel nemá oprávnění k zápisu, ale pokusil se nastavit tuto vlastnost na false.

Příklady

Následující příklad vytvoří dočasný soubor, pomocí IsReadOnly vlastnosti nejprve zkontroluje a pak nastaví jeho stav jen pro čtení a nakonec ho označí jako pro čtení i zápis, aby bylo možné jej odstranit.

using System;
using System.IO;

public class FileExample
{
    public static void Main()
    {
        // Create a temporary file.
        string filePath = Path.GetTempFileName();
        Console.WriteLine($"Created a temp file at '{filePath}'.");

        // Create a new FileInfo object.
        FileInfo fInfo = new FileInfo(filePath);

        // Get the read-only value for a file.
        bool isReadOnly = fInfo.IsReadOnly;

        // Display whether the file is read-only.
        Console.WriteLine($"The file read-only value for '{fInfo.Name}' is {isReadOnly}.");

        // Set the file to read-only.        
        Console.WriteLine($"Setting the read-only value for '{fInfo.Name}' to true.");
        fInfo.IsReadOnly = true;

        // Get the read-only value for a file.
        isReadOnly = fInfo.IsReadOnly;

        // Display that the file is now read-only.
        Console.WriteLine($"The file read-only value for '{fInfo.Name}' is {isReadOnly}.");

        // Make the file mutable again so it can be deleted.
        fInfo.IsReadOnly = false;

        // Delete the temporary file.
        fInfo.Delete();
    }
}

// This code produces output similar to the following,
// though results may vary based on the computer, file structure, etc.:
//
// Created a temp file at 'C:\Users\UserName\AppData\Local\Temp\tmpB438.tmp'.
// The file read-only value for 'tmpB438.tmp' is False.
// Setting the read-only value for 'tmpB438.tmp' to true.
// The file read-only value for 'tmpB438.tmp' is True.
//
Imports System.IO

Module FileExample

    Sub Main()

        ' Create a temporary file.
        Dim filePath As String = Path.GetTempFileName()
        Console.WriteLine($"Created a temp file at '{filePath}'.")

        ' Create a new FileInfo object.
        Dim fInfo As New FileInfo(filePath)

        ' Get the read-only value for a file.
        Dim isReadOnly As Boolean = fInfo.IsReadOnly

        ' Display whether the file is read-only.
        Console.WriteLine($"The file read-only value for '{fInfo.Name}' is {isReadOnly}.")

        ' Set the file to read-only.
        Console.WriteLine($"Setting the read-only value for '{fInfo.Name}' to true.")
        fInfo.IsReadOnly = True

        ' Get the read-only value for a file.
        isReadOnly = fInfo.IsReadOnly

        ' Display that the file is now read-only.
        Console.WriteLine($"The file read-only value for '{fInfo.Name}' is {isReadOnly}.")

        ' Make the file mutable again so it can be deleted.
        fInfo.IsReadOnly = False

        ' Delete the temporary file.
        fInfo.Delete()
    End Sub

End Module

' This code produces output similar to the following,
' though results may vary based on the computer, file structure, etc.:
'
' Created a temp file at 'C:\Users\UserName\AppData\Local\Temp\tmpB438.tmp'.
' The file read-only value for 'tmpB438.tmp' is False.
' Setting the read-only value for 'tmpB438.tmp' to true.
' The file read-only value for 'tmpB438.tmp' is True.
'

Poznámky

IsReadOnly Pomocí vlastnosti můžete rychle určit nebo změnit, zda je aktuální soubor jen pro čtení.

Pokud aktuální soubor neexistuje, získání této vlastnosti vždy vrátí true, ale pokusí se nastavit vyvolá chybu FileNotFoundException.

Při prvním volání FileInfo volá a Refresh ukládá informace o souboru do mezipaměti. Při dalších voláních musíte zavolat Refresh , abyste získali nejnovější kopii informací.

Platí pro