FileOptions Enum
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vertegenwoordigt geavanceerde opties voor het maken van een FileStream object.
Deze opsomming ondersteunt een bitsgewijze combinatie van de waarden van de leden.
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
- Overname
- Kenmerken
Velden
| Name | Waarde | Description |
|---|---|---|
| WriteThrough | -2147483648 | Geeft aan dat het systeem moet schrijven via een tussenliggende cache en rechtstreeks naar de schijf moet gaan. |
| None | 0 | Geeft aan dat er geen extra opties moeten worden gebruikt bij het maken van een FileStream object. |
| Encrypted | 16384 | Geeft aan dat een bestand is versleuteld en alleen kan worden ontsleuteld met hetzelfde gebruikersaccount dat wordt gebruikt voor versleuteling. |
| DeleteOnClose | 67108864 | Geeft aan dat een bestand automatisch wordt verwijderd wanneer het niet meer wordt gebruikt. |
| SequentialScan | 134217728 | Geeft aan dat het bestand opeenvolgend moet worden geopend. Het systeem kan dit gebruiken als hint voor het optimaliseren van bestandscache. Als een toepassing de bestandsaanwijzer voor willekeurige toegang verplaatst, kan er geen optimale caching optreden; de juiste werking is echter nog steeds gegarandeerd. Als u deze vlag opgeeft, kunnen de prestaties in sommige gevallen toenemen. |
| RandomAccess | 268435456 | Geeft aan dat het bestand willekeurig wordt geopend. Het systeem kan dit gebruiken als hint voor het optimaliseren van bestandscache. |
| Asynchronous | 1073741824 | Geeft aan dat een bestand kan worden gebruikt voor asynchroon lezen en schrijven. |
Voorbeelden
In het volgende voorbeeld ziet u hoe u de Asynchrone waarde gebruikt bij het maken van een bestandsstroom.
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
Opmerkingen
Het opgeven van de FileOptions.SequentialScan vlag kan de prestaties verbeteren voor toepassingen die grote bestanden lezen met behulp van sequentiële toegang. Prestatieverbeteringen kunnen nog duidelijker zijn voor toepassingen die grote bestanden meestal sequentieel lezen, maar af en toe overslaan van kleine bereiken van bytes.