FileOptions 열거형

정의

FileStream 개체를 만들기 위한 고급 옵션을 나타냅니다.Represents advanced options for creating a FileStream object.

이 열거형에는 멤버 값의 비트 조합을 허용하는 FlagsAttribute 특성이 있습니다.

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
상속
FileOptions
특성

필드

Asynchronous 1073741824

파일을 비동기 읽기 및 쓰기에 사용할 수 있음을 나타냅니다.Indicates that a file can be used for asynchronous reading and writing.

DeleteOnClose 67108864

파일이 더 이상 사용되지 않는 경우 자동으로 삭제됨을 나타냅니다.Indicates that a file is automatically deleted when it is no longer in use.

Encrypted 16384

파일이 암호화되어 있고 암호화할 때 사용한 사용자 계정으로만 해독할 수 있음을 나타냅니다.Indicates that a file is encrypted and can be decrypted only by using the same user account used for encryption.

None 0

FileStream 개체를 만들 때 추가 옵션을 사용할 수 없음을 나타냅니다.Indicates that no additional options should be used when creating a FileStream object.

RandomAccess 268435456

파일이 임의로 액세스됨을 나타냅니다.Indicates that the file is accessed randomly. 시스템에서는 이 필드를 힌트로 사용하여 파일 캐싱을 최적화할 수 있습니다.The system can use this as a hint to optimize file caching.

SequentialScan 134217728

파일이 처음부터 끝까지 순차적으로 액세스됨을 나타냅니다.Indicates that the file is to be accessed sequentially from beginning to end. 시스템에서는 이 필드를 힌트로 사용하여 파일 캐싱을 최적화할 수 있습니다.The system can use this as a hint to optimize file caching. 애플리케이션에서 임의 액세스를 위해 파일 포인터를 이동하는 경우 최적 캐싱이 수행되지 않을 수 있지만 올바른 작업은 보장됩니다.If an application moves the file pointer for random access, optimum caching may not occur; however, correct operation is still guaranteed. 경우에 따라 이 플래그를 지정하면 성능을 향상시킬 수 있습니다.Specifying this flag can increase performance in some cases.

WriteThrough -2147483648

시스템이 중간 캐시를 통해 쓰고 디스크로 직접 이동해야 함을 나타냅니다.Indicates that the system should write through any intermediate cache and go directly to disk.

예제

다음 예제에서는 파일 스트림을 만들 때 비동기 값을 사용 하는 방법을 보여 줍니다.The following example shows how to use the Asynchronous value when creating a file stream.

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

설명

플래그를 지정 하면 FileOptions.SequentialScan 순차 액세스를 사용 하 여 용량이 많은 파일을 읽는 응용 프로그램의 성능이 향상 될 수 있습니다.Specifying the FileOptions.SequentialScan flag can increase performance for applications that read large files using sequential access. 성능 향상을 훨씬 더 큰 파일을 주로 순차적으로 읽을 하지만 작은 범위의 바이트를 건너뛰는 경우에 따라 애플리케이션에 대 한 눈에 띄는 될 수 있습니다.Performance gains can be even more noticeable for applications that read large files mostly sequentially, but occasionally skip over small ranges of bytes.

적용 대상