FileOptions 열거형
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
FileStream 개체를 만들기 위한 고급 옵션을 나타냅니다.
이 열거형은 멤버 값의 비트 조합을 지원합니다.
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
- 상속
- 특성
필드
Asynchronous | 1073741824 | 파일을 비동기 읽기 및 쓰기에 사용할 수 있음을 나타냅니다. |
DeleteOnClose | 67108864 | 파일이 더 이상 사용되지 않는 경우 자동으로 삭제됨을 나타냅니다. |
Encrypted | 16384 | 파일이 암호화되어 있고 암호화할 때 사용한 사용자 계정으로만 해독할 수 있음을 나타냅니다. |
None | 0 | FileStream 개체를 만들 때 추가 옵션을 사용할 수 없음을 나타냅니다. |
RandomAccess | 268435456 | 파일이 임의로 액세스됨을 나타냅니다. 시스템에서는 이 필드를 힌트로 사용하여 파일 캐싱을 최적화할 수 있습니다. |
SequentialScan | 134217728 | 파일이 처음부터 끝까지 순차적으로 액세스됨을 나타냅니다. 시스템에서는 이 필드를 힌트로 사용하여 파일 캐싱을 최적화할 수 있습니다. 애플리케이션에서 임의 액세스를 위해 파일 포인터를 이동하는 경우 최적 캐싱이 수행되지 않을 수 있지만 올바른 작업은 보장됩니다. 경우에 따라 이 플래그를 지정하면 성능을 향상시킬 수 있습니다. |
WriteThrough | -2147483648 | 시스템이 중간 캐시를 통해 쓰고 디스크로 직접 이동해야 함을 나타냅니다. |
예제
다음 예제에서는 파일 스트림을 만들 때 비동기 값을 사용하는 방법을 보여줍니다.
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
지정하면 순차적 액세스를 사용하여 대용량 파일을 읽는 애플리케이션의 성능이 향상됩니다. 성능 향상을 훨씬 더 큰 파일을 주로 순차적으로 읽을 하지만 작은 범위의 바이트를 건너뛰는 경우에 따라 애플리케이션에 대 한 눈에 띄는 될 수 있습니다.
적용 대상
.NET