다음을 통해 공유


FileStream 클래스

정의

파일에 대한 Stream 제공하여 동기 및 비동기 읽기 및 쓰기 작업을 모두 지원합니다.

public ref class FileStream : System::IO::Stream
public class FileStream : System.IO.Stream
[System.Runtime.InteropServices.ComVisible(true)]
public class FileStream : System.IO.Stream
type FileStream = class
    inherit Stream
[<System.Runtime.InteropServices.ComVisible(true)>]
type FileStream = class
    inherit Stream
Public Class FileStream
Inherits Stream
상속
FileStream
상속
파생
특성

예제

다음 예제에서는 FileStream 생성자 중 일부를 보여 줍니다.

using namespace System;
using namespace System::IO;
using namespace System::Text;

void AddText( FileStream^ fs, String^ value )
{
   array<Byte>^info = (gcnew UTF8Encoding( true ))->GetBytes( value );
   fs->Write( info, 0, info->Length );
}

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   
   // Delete the file if it exists.
   if ( File::Exists( path ) )
   {
      File::Delete( path );
   }

   //Create the file.
   {
      FileStream^ fs = File::Create( path );
      try
      {
         AddText( fs, "This is some text" );
         AddText( fs, "This is some more text," );
         AddText( fs, "\r\nand this is on a new line" );
         AddText( fs, "\r\n\r\nThe following is a subset of characters:\r\n" );
         for ( int i = 1; i < 120; i++ )
         {
            AddText( fs, Convert::ToChar( i ).ToString() );
            
            //Split the output at every 10th character.
            if ( Math::IEEERemainder( Convert::ToDouble( i ), 10 ) == 0 )
            {
               AddText( fs, "\r\n" );
            }
         }
      }
      finally
      {
         if ( fs )
            delete (IDisposable^)fs;
      }
   }
   
   //Open the stream and read it back.
   {
      FileStream^ fs = File::OpenRead( path );
      try
      {
         array<Byte>^b = gcnew array<Byte>(1024);
         UTF8Encoding^ temp = gcnew UTF8Encoding( true );
         while ( fs->Read( b, 0, b->Length ) > 0 )
         {
            Console::WriteLine( temp->GetString( b ) );
         }
      }
      finally
      {
         if ( fs )
            delete (IDisposable^)fs;
      }
   }
}
using System;
using System.IO;
using System.Text;

class Test
{

    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // Delete the file if it exists.
        if (File.Exists(path))
        {
            File.Delete(path);
        }

        //Create the file.
        using (FileStream fs = File.Create(path))
        {
            AddText(fs, "This is some text");
            AddText(fs, "This is some more text,");
            AddText(fs, "\r\nand this is on a new line");
            AddText(fs, "\r\n\r\nThe following is a subset of characters:\r\n");

            for (int i=1;i < 120;i++)
            {
                AddText(fs, Convert.ToChar(i).ToString());
            }
        }

        //Open the stream and read it back.
        using (FileStream fs = File.OpenRead(path))
        {
            byte[] b = new byte[1024];
            UTF8Encoding temp = new UTF8Encoding(true);
            int readLen;
            while ((readLen = fs.Read(b,0,b.Length)) > 0)
            {
                Console.WriteLine(temp.GetString(b,0,readLen));
            }
        }
    }

    private static void AddText(FileStream fs, string value)
    {
        byte[] info = new UTF8Encoding(true).GetBytes(value);
        fs.Write(info, 0, info.Length);
    }
}
open System
open System.IO
open System.Text

let addText (fs:FileStream) (value: string) =
    let info = UTF8Encoding(true).GetBytes value
    fs.Write(info, 0, info.Length);

let path = @"c:\temp\MyTest.txt"

// Delete the file if it exists.
if File.Exists path then
    File.Delete path

//Create the file.
do
    use fs = File.Create path

    addText fs "This is some text"
    addText fs "This is some more text,"
    addText fs "\r\nand this is on a new line"
    addText fs "\r\n\r\nThe following is a subset of characters:\r\n"

    for i = 1 to 119 do
        Convert.ToChar i
        |> string
        |> addText fs
    
do
    //Open the stream and read it back.
    use fs = File.OpenRead path
    let b = Array.zeroCreate 1024
    let temp = UTF8Encoding true
    let mutable readLen = fs.Read(b,0,b.Length);
    while readLen> 0 do
        printfn $"{temp.GetString(b,0,readLen)}"
        readLen <- fs.Read(b,0,b.Length)
Imports System.IO
Imports System.Text

Public Class Test

    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        ' Delete the file if it exists.
        If File.Exists(path) Then
            File.Delete(path)
        End If

        'Create the file.
        Dim fs As FileStream = File.Create(path)

        AddText(fs, "This is some text")
        AddText(fs, "This is some more text,")
        AddText(fs, Environment.NewLine & "and this is on a new line")
        AddText(fs, Environment.NewLine & Environment.NewLine)
        AddText(fs, "The following is a subset of characters:" & Environment.NewLine)

        Dim i As Integer

        For i = 1 To 120
            AddText(fs, Convert.ToChar(i).ToString())

        Next

        fs.Close()

        'Open the stream and read it back.
        fs = File.OpenRead(path)
        Dim b(1023) As Byte
        Dim temp As UTF8Encoding = New UTF8Encoding(True)

        Do While fs.Read(b, 0, b.Length) > 0
            Console.WriteLine(temp.GetString(b))
        Loop

        fs.Close()
    End Sub

    Private Shared Sub AddText(ByVal fs As FileStream, ByVal value As String)
        Dim info As Byte() = New UTF8Encoding(True).GetBytes(value)
        fs.Write(info, 0, info.Length)
    End Sub
End Class

다음 예제에서는 파일에 비동기적으로 쓰는 방법을 보여줍니다. 이 코드는 UserInput이라는 TextBlock과 이름이 Button_Click Click 이벤트 처리기에 연결된 단추가 있는 WPF 앱에서 실행됩니다. 파일 경로를 컴퓨터에 있는 파일로 변경해야 합니다.

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

namespace WpfApplication1
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            UnicodeEncoding uniencoding = new UnicodeEncoding();
            string filename = @"c:\Users\exampleuser\Documents\userinputlog.txt";

            byte[] result = uniencoding.GetBytes(UserInput.Text);

            using (FileStream SourceStream = File.Open(filename, FileMode.OpenOrCreate))
            {
                SourceStream.Seek(0, SeekOrigin.End);
                await SourceStream.WriteAsync(result, 0, result.Length);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Class MainWindow
    Private Async Sub Button_Click(sender As Object, e As RoutedEventArgs)
        Dim uniencoding As UnicodeEncoding = New UnicodeEncoding()
        Dim filename As String = "c:\Users\exampleuser\Documents\userinputlog.txt"

        Dim result As Byte() = uniencoding.GetBytes(UserInput.Text)

        Using SourceStream As FileStream = File.Open(filename, FileMode.OpenOrCreate)
            SourceStream.Seek(0, SeekOrigin.End)
            Await SourceStream.WriteAsync(result, 0, result.Length)
        End Using
    End Sub
End Class

설명

이 API에 대한 자세한 내용은 FileStream대한 추가 API 비고를 참조하세요.

생성자

FileStream(IntPtr, FileAccess)
사용되지 않음.
사용되지 않음.
사용되지 않음.

지정된 읽기/쓰기 권한을 사용하여 지정된 파일 핸들에 대한 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(IntPtr, FileAccess, Boolean)
사용되지 않음.
사용되지 않음.
사용되지 않음.

지정된 읽기/쓰기 권한 및 FileStream 인스턴스 소유권을 사용하여 지정된 파일 핸들에 대한 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(IntPtr, FileAccess, Boolean, Int32)
사용되지 않음.
사용되지 않음.
사용되지 않음.

지정된 읽기/쓰기 권한, FileStream 인스턴스 소유권 및 버퍼 크기를 사용하여 지정된 파일 핸들에 대한 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(IntPtr, FileAccess, Boolean, Int32, Boolean)
사용되지 않음.
사용되지 않음.
사용되지 않음.

지정된 읽기/쓰기 권한, FileStream 인스턴스 소유권, 버퍼 크기 및 동기 또는 비동기 상태를 사용하여 지정된 파일 핸들에 대한 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(SafeFileHandle, FileAccess)

지정된 읽기/쓰기 권한을 사용하여 지정된 파일 핸들에 대한 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(SafeFileHandle, FileAccess, Int32)

지정된 읽기/쓰기 권한 및 버퍼 크기를 사용하여 지정된 파일 핸들에 대한 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(SafeFileHandle, FileAccess, Int32, Boolean)

지정된 읽기/쓰기 권한, 버퍼 크기 및 동기 또는 비동기 상태를 사용하여 지정된 파일 핸들에 대한 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode)

지정된 경로 및 생성 모드를 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode, FileAccess)

지정된 경로, 생성 모드 및 읽기/쓰기 권한을 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode, FileAccess, FileShare)

지정된 경로, 생성 모드, 읽기/쓰기 권한 및 공유 권한을 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode, FileAccess, FileShare, Int32)

지정된 경로, 생성 모드, 읽기/쓰기 및 공유 권한 및 버퍼 크기를 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode, FileAccess, FileShare, Int32, Boolean)

지정된 경로, 생성 모드, 읽기/쓰기 및 공유 권한, 버퍼 크기, 동기 또는 비동기 상태를 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode, FileAccess, FileShare, Int32, FileOptions)

지정된 경로, 생성 모드, 읽기/쓰기 및 공유 권한, 다른 FileStreams가 동일한 파일, 버퍼 크기 및 추가 파일 옵션에 대해 가질 수 있는 액세스 권한을 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions)

지정된 경로, 생성 모드, 액세스 권한 및 공유 권한, 버퍼 크기 및 추가 파일 옵션을 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileMode, FileSystemRights, FileShare, Int32, FileOptions, FileSecurity)

지정된 경로, 생성 모드, 액세스 권한 및 공유 권한, 버퍼 크기, 추가 파일 옵션, 액세스 제어 및 감사 보안을 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

FileStream(String, FileStreamOptions)

지정된 경로, 생성 모드, 읽기/쓰기 및 공유 권한, 버퍼 크기, 추가 파일 옵션, 사전 할당 크기 및 다른 FileStreams가 동일한 파일에 대해 가질 수 있는 액세스를 사용하여 FileStream 클래스의 새 인스턴스를 초기화합니다.

속성

CanRead

현재 스트림이 읽기를 지원하는지 여부를 나타내는 값을 가져옵니다.

CanSeek

현재 스트림에서 검색을 지원하는지 여부를 나타내는 값을 가져옵니다.

CanTimeout

현재 스트림이 시간 초과할 수 있는지 여부를 결정하는 값을 가져옵니다.

(다음에서 상속됨 Stream)
CanWrite

현재 스트림이 쓰기를 지원하는지 여부를 나타내는 값을 가져옵니다.

Handle
사용되지 않음.
사용되지 않음.
사용되지 않음.

현재 FileStream 개체가 캡슐화하는 파일에 대한 운영 체제 파일 핸들을 가져옵니다.

IsAsync

FileStream 비동기적으로 또는 동기적으로 열렸는지 여부를 나타내는 값을 가져옵니다.

Length

스트림의 길이(바이트)를 가져옵니다.

Name

FileStream열린 파일의 절대 경로를 가져옵니다.

Position

이 스트림의 현재 위치를 가져오거나 설정합니다.

ReadTimeout

시간이 초과되기 전에 스트림이 읽기를 시도하는 기간을 결정하는 값(밀리초)을 가져오거나 설정합니다.

(다음에서 상속됨 Stream)
SafeFileHandle

현재 FileStream 개체가 캡슐화하는 파일의 운영 체제 파일 핸들을 나타내는 SafeFileHandle 개체를 가져옵니다.

WriteTimeout

시간 초과 전에 스트림이 쓰기를 시도하는 기간을 결정하는 값을 밀리초 단위로 가져오거나 설정합니다.

(다음에서 상속됨 Stream)

메서드

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

비동기 읽기 작업을 시작합니다. 대신 ReadAsync(Byte[], Int32, Int32, CancellationToken) 사용하는 것이 좋습니다.

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

비동기 읽기 작업을 시작합니다. (대신 ReadAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.)

(다음에서 상속됨 Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

비동기 쓰기 작업을 시작합니다. 대신 WriteAsync(Byte[], Int32, Int32, CancellationToken) 사용하는 것이 좋습니다.

BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

비동기 쓰기 작업을 시작합니다. (대신 WriteAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.)

(다음에서 상속됨 Stream)
Close()

현재 스트림을 닫고 현재 스트림과 연결된 모든 리소스(예: 소켓 및 파일 핸들)를 해제합니다.

Close()

현재 스트림을 닫고 현재 스트림과 연결된 모든 리소스(예: 소켓 및 파일 핸들)를 해제합니다. 이 메서드를 호출하는 대신 스트림이 제대로 삭제되었는지 확인합니다.

(다음에서 상속됨 Stream)
CopyTo(Stream)

현재 스트림에서 바이트를 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다.

(다음에서 상속됨 Stream)
CopyTo(Stream, Int32)

파일에 대한 Stream 제공하여 동기 및 비동기 읽기 및 쓰기 작업을 모두 지원합니다.

CopyTo(Stream, Int32)

현재 스트림에서 바이트를 읽고 지정된 버퍼 크기를 사용하여 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다.

(다음에서 상속됨 Stream)
CopyToAsync(Stream)

현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다.

(다음에서 상속됨 Stream)
CopyToAsync(Stream, CancellationToken)

지정된 취소 토큰을 사용하여 현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다.

(다음에서 상속됨 Stream)
CopyToAsync(Stream, Int32)

지정된 버퍼 크기를 사용하여 현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다.

(다음에서 상속됨 Stream)
CopyToAsync(Stream, Int32, CancellationToken)

지정된 버퍼 크기 및 취소 토큰을 사용하여 현재 파일 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다.

CopyToAsync(Stream, Int32, CancellationToken)

지정된 버퍼 크기 및 취소 토큰을 사용하여 현재 스트림에서 바이트를 비동기적으로 읽고 다른 스트림에 씁니다. 두 스트림 위치는 복사된 바이트 수만큼 고급입니다.

(다음에서 상속됨 Stream)
CreateObjRef(Type)

원격 개체와 통신하는 데 사용되는 프록시를 생성하는 데 필요한 모든 관련 정보를 포함하는 개체를 만듭니다.

(다음에서 상속됨 MarshalByRefObject)
CreateWaitHandle()
사용되지 않음.
사용되지 않음.
사용되지 않음.

WaitHandle 개체를 할당합니다.

(다음에서 상속됨 Stream)
Dispose()

Stream사용하는 모든 리소스를 해제합니다.

(다음에서 상속됨 Stream)
Dispose(Boolean)

FileStream 사용하는 관리되지 않는 리소스를 해제하고 필요에 따라 관리되는 리소스를 해제합니다.

DisposeAsync()

FileStream사용되는 관리되지 않는 리소스를 비동기적으로 해제합니다.

DisposeAsync()

Stream사용되는 관리되지 않는 리소스를 비동기적으로 해제합니다.

(다음에서 상속됨 Stream)
EndRead(IAsyncResult)

보류 중인 비동기 읽기 작업이 완료되기를 기다립니다. (대신 ReadAsync(Byte[], Int32, Int32, CancellationToken) 사용하는 것이 좋습니다.)

EndRead(IAsyncResult)

보류 중인 비동기 읽기가 완료되기를 기다립니다. (대신 ReadAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.)

(다음에서 상속됨 Stream)
EndWrite(IAsyncResult)

비동기 쓰기 작업을 종료하고 I/O 작업이 완료될 때까지 차단합니다. (대신 WriteAsync(Byte[], Int32, Int32, CancellationToken) 사용하는 것이 좋습니다.)

EndWrite(IAsyncResult)

비동기 쓰기 작업을 종료합니다. (대신 WriteAsync(Byte[], Int32, Int32) 사용하는 것이 좋습니다.)

(다음에서 상속됨 Stream)
Equals(Object)

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
Finalize()

가비지 수집기가 FileStream회수할 때 리소스가 해제되고 다른 정리 작업이 수행되는지 확인합니다.

Flush()

이 스트림에 대한 버퍼를 지우고 버퍼링된 데이터가 파일에 기록되도록 합니다.

Flush(Boolean)

이 스트림에 대한 버퍼를 지우고 버퍼링된 데이터가 파일에 기록되도록 하고 모든 중간 파일 버퍼도 지웁니다.

FlushAsync()

이 스트림에 대한 모든 버퍼를 비동기적으로 지우고 버퍼링된 데이터가 기본 디바이스에 기록되도록 합니다.

(다음에서 상속됨 Stream)
FlushAsync(CancellationToken)

이 스트림에 대한 모든 버퍼를 비동기적으로 지우고, 버퍼링된 데이터를 기본 디바이스에 쓰게 하고, 취소 요청을 모니터링합니다.

FlushAsync(CancellationToken)

이 스트림에 대한 모든 버퍼를 비동기적으로 지우고, 버퍼링된 데이터를 기본 디바이스에 쓰게 하고, 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
GetAccessControl()

현재 FileStream 개체에서 설명하는 파일에 대한 ACL(액세스 제어 목록) 항목을 캡슐화하는 FileSecurity 개체를 가져옵니다.

GetHashCode()

기본 해시 함수로 사용됩니다.

(다음에서 상속됨 Object)
GetLifetimeService()
사용되지 않음.

이 인스턴스의 수명 정책을 제어하는 현재 수명 서비스 개체를 검색합니다.

(다음에서 상속됨 MarshalByRefObject)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
InitializeLifetimeService()
사용되지 않음.

이 인스턴스의 수명 정책을 제어하는 수명 서비스 개체를 가져옵니다.

(다음에서 상속됨 MarshalByRefObject)
Lock(Int64, Int64)

다른 프로세스가 FileStream읽거나 쓰는 것을 방지합니다.

MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
MemberwiseClone(Boolean)

현재 MarshalByRefObject 개체의 단순 복사본을 만듭니다.

(다음에서 상속됨 MarshalByRefObject)
ObjectInvariant()
사용되지 않음.

Contract대한 지원을 제공합니다.

(다음에서 상속됨 Stream)
Read(Byte[], Int32, Int32)

스트림에서 바이트 블록을 읽고 지정된 버퍼에 데이터를 씁니다.

Read(Span<Byte>)

현재 파일 스트림에서 바이트 시퀀스를 읽고 파일 스트림 내의 위치를 읽은 바이트 수만큼 앞으로 이동합니다.

Read(Span<Byte>)

파생 클래스에서 재정의되는 경우 현재 스트림에서 바이트 시퀀스를 읽고 읽은 바이트 수만큼 스트림 내의 위치를 앞으로 이동합니다.

(다음에서 상속됨 Stream)
ReadAsync(Byte[], Int32, Int32)

현재 스트림에서 바이트 시퀀스를 비동기적으로 읽고 읽은 바이트 수만큼 스트림 내의 위치를 이동합니다.

(다음에서 상속됨 Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

현재 파일 스트림에서 바이트 시퀀스를 비동기적으로 읽고 지정된 오프셋에서 시작하는 바이트 배열에 쓰고, 파일 스트림 내의 위치를 읽은 바이트 수만큼 이동하고, 취소 요청을 모니터링합니다.

ReadAsync(Byte[], Int32, Int32, CancellationToken)

현재 스트림에서 바이트 시퀀스를 비동기적으로 읽고, 읽은 바이트 수만큼 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
ReadAsync(Memory<Byte>, CancellationToken)

현재 파일 스트림에서 바이트 시퀀스를 비동기적으로 읽고 메모리 영역에 쓰고, 읽은 바이트 수만큼 파일 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다.

ReadAsync(Memory<Byte>, CancellationToken)

현재 스트림에서 바이트 시퀀스를 비동기적으로 읽고, 읽은 바이트 수만큼 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
ReadAtLeast(Span<Byte>, Int32, Boolean)

현재 스트림에서 최소 바이트 수를 읽고 읽은 바이트 수만큼 스트림 내의 위치를 앞으로 이동합니다.

(다음에서 상속됨 Stream)
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken)

현재 스트림에서 최소 바이트 수를 비동기적으로 읽고, 읽은 바이트 수만큼 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
ReadByte()

파일에서 바이트를 읽고 읽기 위치를 1 바이트 앞으로 이동합니다.

ReadExactly(Byte[], Int32, Int32)

현재 스트림에서 count 바이트 수를 읽고 스트림 내의 위치를 이동합니다.

(다음에서 상속됨 Stream)
ReadExactly(Span<Byte>)

현재 스트림에서 바이트를 읽고 buffer 채워질 때까지 스트림 내의 위치를 이동합니다.

(다음에서 상속됨 Stream)
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)

현재 스트림에서 count 바이트 수를 비동기적으로 읽고 스트림 내의 위치를 이동하고 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
ReadExactlyAsync(Memory<Byte>, CancellationToken)

현재 스트림에서 바이트를 비동기적으로 읽고, buffer 채워질 때까지 스트림 내의 위치를 이동하고, 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
Seek(Int64, SeekOrigin)

이 스트림의 현재 위치를 지정된 값으로 설정합니다.

SetAccessControl(FileSecurity)

FileSecurity 개체에서 설명하는 ACL(액세스 제어 목록) 항목을 현재 FileStream 개체에서 설명하는 파일에 적용합니다.

SetLength(Int64)

이 스트림의 길이를 지정된 값으로 설정합니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
Unlock(Int64, Int64)

이전에 잠긴 파일의 전체 또는 일부에 대한 다른 프로세스의 액세스를 허용합니다.

Write(Byte[], Int32, Int32)

파일 스트림에 바이트 블록을 씁니다.

Write(ReadOnlySpan<Byte>)

읽기 전용 범위에서 현재 파일 스트림으로 바이트 시퀀스를 작성하고 이 파일 스트림 내의 현재 위치를 기록된 바이트 수만큼 앞으로 이동합니다.

Write(ReadOnlySpan<Byte>)

파생 클래스에서 재정의되는 경우 바이트 시퀀스를 현재 스트림에 쓰고 이 스트림 내의 현재 위치를 기록된 바이트 수만큼 앞으로 이동합니다.

(다음에서 상속됨 Stream)
WriteAsync(Byte[], Int32, Int32)

바이트 시퀀스를 현재 스트림에 비동기적으로 쓰고 이 스트림 내의 현재 위치를 기록된 바이트 수만큼 앞으로 이동합니다.

(다음에서 상속됨 Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

바이트 시퀀스를 현재 스트림에 비동기적으로 쓰고, 기록된 바이트 수만큼 이 스트림 내의 현재 위치를 발전시키고, 취소 요청을 모니터링합니다.

WriteAsync(Byte[], Int32, Int32, CancellationToken)

바이트 시퀀스를 현재 스트림에 비동기적으로 쓰고, 기록된 바이트 수만큼 이 스트림 내의 현재 위치를 발전시키고, 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

메모리 영역에서 현재 파일 스트림으로 바이트 시퀀스를 비동기적으로 작성하고, 기록된 바이트 수만큼 이 파일 스트림 내의 현재 위치를 이동하고, 취소 요청을 모니터링합니다.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

바이트 시퀀스를 현재 스트림에 비동기적으로 쓰고, 기록된 바이트 수만큼 이 스트림 내의 현재 위치를 발전시키고, 취소 요청을 모니터링합니다.

(다음에서 상속됨 Stream)
WriteByte(Byte)

파일 스트림의 현재 위치에 바이트를 씁니다.

명시적 인터페이스 구현

IDisposable.Dispose()

Stream사용하는 모든 리소스를 해제합니다.

(다음에서 상속됨 Stream)

확장 메서드

GetAccessControl(FileStream)

파일의 보안 정보를 반환합니다.

SetAccessControl(FileStream, FileSecurity)

기존 파일의 보안 특성을 변경합니다.

CopyToAsync(Stream, PipeWriter, CancellationToken)

취소 토큰을 사용하여 Stream 바이트를 비동기적으로 읽고 지정된 PipeWriter씁니다.

AsInputStream(Stream)

Windows 스토어 앱용 .NET의 관리되는 스트림을 Windows 런타임의 입력 스트림으로 변환합니다.

AsOutputStream(Stream)

Windows 스토어 앱용 .NET의 관리되는 스트림을 Windows 런타임의 출력 스트림으로 변환합니다.

AsRandomAccessStream(Stream)

지정된 스트림을 임의 액세스 스트림으로 변환합니다.

ConfigureAwait(IAsyncDisposable, Boolean)

비동기 삭제 가능 파일에서 반환된 작업에 대한 대기가 수행되는 방법을 구성합니다.

적용 대상

추가 정보