Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese
Informazioni
L'argomento richiesto è visualizzato di seguito, ma non è incluso in questa libreria.

Metodo WindowsRuntimeStreamExtensions.AsStreamForWrite (IOutputStream)

.NET Framework (current version)

Converte un flusso di output in Windows Runtime in un flusso gestito in .NET per app di Windows Store.

Questa API non è conforme a CLS. 

Spazio dei nomi:  System.IO
Assembly:  System.Runtime.WindowsRuntime (in System.Runtime.WindowsRuntime.dll)

[CLSCompliantAttribute(false)]
public static Stream AsStreamForWrite(
	this IOutputStream windowsRuntimeStream
)

Parametri

windowsRuntimeStream
Tipo: IOutputStream
Oggetto IOutputStream di Windows Runtime da convertire.

Valore restituito

Tipo: System.IO.Stream
Flusso convertito.

Nota sull'utilizzo

In Visual Basic e C# è possibile chiamare questo metodo come metodo di istanza su qualsiasi oggetto di tipo IOutputStream. Per chiamare il metodo usando la sintassi del metodo di istanza, omettere il primo parametro. Per altre informazioni, vedere Metodi di estensione (Visual Basic) o Metodi di estensione (Guida per programmatori C#).

EccezioneCondizione
ArgumentNullException

windowsRuntimeStream è null.

La dimensione del buffer predefinite di 16.384 byte vengono utilizzate per convertire il flusso. Per specificare le dimensioni del buffer diversi, utilizzare l'overload AsStreamForWrite(IOutputStream).

Di seguito viene illustrato come utilizzare i metodi AsStreamForRead e AsStreamForWrite per convertire un flusso gestito da un flusso in Windows Runtime.


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();
                }
            }
        }
    }
}


Di seguito è riportato il codice XAML associato all'esempio precedente.


<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

Supportato in: 4.6, 4.5

.NET per applicazioni Windows Phone

Supportato in: Silverlight per Windows Phone 8

.NET per app di Windows Store

Supportato in:

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

.NET Framework non supporta tutte le versioni di ogni piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Mostra: