この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

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 型で公開されるメンバーは以下のとおりです。

  名前説明
パブリック メソッド静的メンバーAsInputStreamWindows ストア アプリ用 .NET のマネージ ストリームを Windows ランタイム の入力ストリームに変換します。
パブリック メソッド静的メンバーAsOutputStreamWindows ストア アプリ用 .NET のマネージ ストリームを Windows ランタイム の出力ストリームに変換します。
パブリック メソッド静的メンバーAsRandomAccessStream特定のストリームをランダム アクセス ストリームに変換します。
パブリック メソッド静的メンバーAsStream(IRandomAccessStream)Windows ランタイム のランダム アクセス ストリームを Windows ストア アプリ用 .NET のマネージ ストリームに変換します。
パブリック メソッド静的メンバーAsStream(IRandomAccessStream, Int32)指定されたバッファー サイズを使用して、Windows ランタイム のランダム アクセス ストリームを Windows ストア アプリ用 .NET のマネージ ストリームに変換します。
パブリック メソッド静的メンバーAsStreamForRead(IInputStream)Windows ランタイム の入力ストリームを Windows ストア アプリ用 .NET のマネージ ストリームに変換します。
パブリック メソッド静的メンバーAsStreamForRead(IInputStream, Int32)指定されたバッファー サイズを使用して、Windows ランタイム の入力ストリームを Windows ストア アプリ用 .NET のマネージ ストリームに変換します。
パブリック メソッド静的メンバーAsStreamForWrite(IOutputStream)Windows ランタイム の出力ストリームを Windows ストア アプリ用 .NET のマネージ ストリームに変換します。
パブリック メソッド静的メンバー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) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

コミュニティの追加

表示: