이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

WindowsRuntimeStreamExtensions 클래스

.NET Framework (current version)

Windows 런타임의 스트림과 Windows 스토어 앱용 .NET의 관리되는 스트림 간에 변환하기 위한 확장 메서드를 포함합니다.

System.Object
  System.IO.WindowsRuntimeStreamExtensions

네임스페이스:  System.IO
어셈블리:  System.Runtime.WindowsRuntime(System.Runtime.WindowsRuntime.dll)

public static class WindowsRuntimeStreamExtensions

WindowsRuntimeStreamExtensions 형식에서는 다음과 같은 멤버를 노출합니다.

  이름설명
Public 메서드정적 멤버AsInputStreamWindows 스토어 앱용 .NET의 관리되는 스트림을 Windows 런타임의 입력 스트림으로 변환합니다.
Public 메서드정적 멤버AsOutputStreamWindows 스토어 앱용 .NET의 관리되는 스트림을 Windows 런타임의 출력 스트림으로 변환합니다.
Public 메서드정적 멤버AsRandomAccessStream지정된 스트림을 임의 액세스 스트림으로 변환합니다.
Public 메서드정적 멤버AsStream(IRandomAccessStream)Windows 런타임의 임의 액세스 스트림을 Windows 스토어 앱용 .NET에서 관리되는 스트림으로 변환합니다.
Public 메서드정적 멤버AsStream(IRandomAccessStream, Int32)지정된 버퍼 크기를 사용하여 Windows 런타임의 임의 액세스 스트림을 Windows 스토어 앱용 .NET의 관리되는 스트림으로 변환합니다.
Public 메서드정적 멤버AsStreamForRead(IInputStream)Windows 런타임의 입력 스트림을 Windows 스토어 앱용 .NET의 관리되는 스트림으로 변환합니다.
Public 메서드정적 멤버AsStreamForRead(IInputStream, Int32)지정된 버퍼 크기를 사용하여 Windows 런타임의 입력 스트림을 Windows 스토어 앱용 .NET의 관리되는 스트림으로 변환합니다.
Public 메서드정적 멤버AsStreamForWrite(IOutputStream)Windows 런타임의 출력 스트림을 Windows 스토어 앱용 .NET의 관리되는 스트림으로 변환합니다.
Public 메서드정적 멤버AsStreamForWrite(IOutputStream, Int32)지정된 버퍼 크기를 사용하여 Windows 런타임의 출력 스트림을 Windows 스토어 앱용 .NET의 관리되는 스트림으로 변환합니다.
위쪽

These extension methods are available only when you develop Windows 스토어 apps. The methods provide convenient ways of working with streams in Windows 스토어 apps. You do not create an instance of the WindowsRuntimeStreamExtensions class; instead, you use these methods from instances of the IInputStream and IOutputStream interfaces and the Stream class.

The WindowsRuntimeStreamExtensions class contains two methods for converting a managed Stream object to a stream in the Windows 런타임:

The WindowsRuntimeStreamExtensions class contains three overloaded methods for converting a stream in the Windows 런타임 to a Stream object:

Starting with the .NET Framework 4.5.1, the WindowsRuntimeStreamExtensions class contains a method for converting a stream to a Windows 런타임 RandomAccessStream:

The following example shows how to use the AsStreamForWrite and AsStreamForRead methods to convert a managed stream to and from a stream in the Windows 런타임.


using System;
using System.IO;
using Windows.Storage;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;

namespace ExampleApplication
{
    public sealed partial class BlankPage : Page
    {
        public BlankPage()
        {
            this.InitializeComponent();
        }

        private async void CreateButton_Click(object sender, RoutedEventArgs e)
        {
            StorageFile newFile = await ApplicationData.Current.LocalFolder.CreateFileAsync("testfile.txt");
            var streamNewFile = await newFile.OpenAsync(FileAccessMode.ReadWrite);

            using (var outputNewFile = streamNewFile.GetOutputStreamAt(0))
            {
                using (StreamWriter writer = new StreamWriter(outputNewFile.AsStreamForWrite()))
                {
                    await writer.WriteLineAsync("content for new file");
                    await writer.WriteLineAsync(UserText.Text);
                }
            }
        }

        private async void VerifyButton_Click(object sender, RoutedEventArgs e)
        {
            StorageFile openedFile = await ApplicationData.Current.LocalFolder.GetFileAsync("testfile.txt");
            var streamOpenedFile = await openedFile.OpenAsync(FileAccessMode.Read);

            using (var inputOpenedFile = streamOpenedFile.GetInputStreamAt(0))
            {
                using (StreamReader reader = new StreamReader(inputOpenedFile.AsStreamForRead()))
                {
                    Results.Text = await reader.ReadToEndAsync();
                }
            }
        }
    }
}


Here's the XAML code that is associated with the previous example.


<Page
    x:Class="ExampleApplication.BlankPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:ExampleApplication"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <StackPanel Background="{StaticResource ApplicationPageBackgroundBrush}" VerticalAlignment="Center" HorizontalAlignment="Center">
        <TextBlock Text="Provide text to write to file:"></TextBlock>
        <TextBox Name="UserText" Width="400"></TextBox>
        <Button Name="CreateButton" Content="Create File" Click="CreateButton_Click"></Button>
        <Button Name="VerifyButton" Content="Verify Contents" Click="VerifyButton_Click"></Button>
        <TextBlock Name="Results"></TextBlock>
    </StackPanel>
</Page>


.NET Framework

4.6, 4.5에서 지원

Windows Phone 앱용 .NET

Windows Phone Silverlight 8에서 지원

Windows 스토어 앱용 .NET

에서 지원

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012

.NET Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항 항목을 참조하세요.

이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.

커뮤니티 추가 항목

표시: