FileOptions Výčet

Definice

Představuje pokročilé možnosti pro vytvoření objektu FileStream .

Tento výčet podporuje bitové kombinace hodnot jeho členů.

public enum class FileOptions
[System.Flags]
public enum FileOptions
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum FileOptions
[<System.Flags>]
type FileOptions = 
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type FileOptions = 
Public Enum FileOptions
Dědičnost
FileOptions
Atributy

Pole

Asynchronous 1073741824

Označuje, že soubor lze použít pro asynchronní čtení a zápis.

DeleteOnClose 67108864

Označuje, že se soubor automaticky odstraní, když se už nepoužívá.

Encrypted 16384

Označuje, že je soubor šifrovaný a lze ho dešifrovat pouze pomocí stejného uživatelského účtu, který se používá k šifrování.

None 0

Označuje, že při vytváření objektu FileStream by se neměly používat žádné další možnosti.

RandomAccess 268435456

Označuje, že k souboru se přistupuje náhodně. Tento systém může použít jako nápovědu k optimalizaci ukládání souborů do mezipaměti.

SequentialScan 134217728

Označuje, že k souboru se má přistupovat postupně od začátku do konce. Tento systém může použít jako nápovědu k optimalizaci ukládání souborů do mezipaměti. Pokud aplikace přesune ukazatel souboru pro náhodný přístup, může dojít k optimálnímu ukládání do mezipaměti; Správná operace je ale stále zaručená. Určení tohoto příznaku může v některých případech zvýšit výkon.

WriteThrough -2147483648

Označuje, že systém by měl zapisovat přes libovolnou zprostředkující mezipaměť a přejít přímo na disk.

Příklady

Následující příklad ukazuje, jak použít asynchronní hodnotu při vytváření datového proudu souboru.

using System;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            WriteToFile();
        }

        static async void WriteToFile()
        {
            byte[] bytesToWrite = Encoding.Unicode.GetBytes("example text to write");
            using (FileStream createdFile = File.Create("c:/Temp/testfile.txt", 4096, FileOptions.Asynchronous))
            {
                await createdFile.WriteAsync(bytesToWrite, 0, bytesToWrite.Length);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteToFile()
    End Sub

    Async Sub WriteToFile()
        Dim bytesToWrite = Encoding.Unicode.GetBytes("example text to write")
        Using createdFile As FileStream = File.Create("c:/Temp/testfile.txt", 4096, FileOptions.Asynchronous)
            Await createdFile.WriteAsync(bytesToWrite, 0, bytesToWrite.Length)
        End Using
    End Sub

End Module

Poznámky

Určení příznaku FileOptions.SequentialScan může zvýšit výkon aplikací, které čtou velké soubory pomocí sekvenčního přístupu. Zvýšení výkonu může být ještě výraznější pro aplikace, které čtou velké soubory většinou postupně, ale občas přeskočí malé rozsahy bajtů.

Platí pro