Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die folgenden Codebeispiele zeigen, wie Zeichen synchron oder asynchron aus einer Zeichenfolge gelesen werden.
Beispiel: Synchrones Lesen von Zeichen
In diesem Beispiel werden 13 Zeichen synchron aus einer Zeichenfolge gelesen, in einem Array gespeichert und angezeigt. Anschließend liest das Beispiel die restlichen Zeichen in der Zeichenfolge, speichert sie im Array beginnend am sechsten Element und zeigt den Inhalt des Arrays an.
using System;
using System.IO;
public class CharsFromStr
{
public static void Main()
{
string str = "Some number of characters";
char[] b = new char[str.Length];
using (StringReader sr = new StringReader(str))
{
// Read 13 characters from the string into the array.
sr.Read(b, 0, 13);
Console.WriteLine(b);
// Read the rest of the string starting at the current string position.
// Put in the array starting at the 6th array member.
sr.Read(b, 5, str.Length - 13);
Console.WriteLine(b);
}
}
}
// The example has the following output:
//
// Some number o
// Some f characters
Imports System.IO
Public Class CharsFromStr
Public Shared Sub Main()
Dim str As String = "Some number of characters"
Dim b(str.Length - 1) As Char
Using sr As StringReader = New StringReader(str)
' Read 13 characters from the string into the array.
sr.Read(b, 0, 13)
Console.WriteLine(b)
' Read the rest of the string starting at the current string position.
' Put in the array starting at the 6th array member.
sr.Read(b, 5, str.Length - 13)
Console.WriteLine(b)
End Using
End Sub
End Class
' The example has the following output:
'
' Some number o
' Some f characters
Beispiel: asynchrones Lesen von Zeichen
Das nächste Beispiel ist der Code hinter einer WPF-App. Beim Laden von Fenstern liest das Beispiel asynchron alle Zeichen aus einem TextBox Steuerelement und speichert sie in einem Array. Dann wird jeder Buchstabe oder jedes Leerzeichen asynchron in eine separate Zeile eines TextBlock Steuerelements geschrieben.
using System;
using System.Text;
using System.Windows;
using System.IO;
namespace StringReaderWriter
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private async void Window_Loaded(object sender, RoutedEventArgs e)
{
char[] charsRead = new char[UserInput.Text.Length];
using (StringReader reader = new StringReader(UserInput.Text))
{
await reader.ReadAsync(charsRead, 0, UserInput.Text.Length);
}
StringBuilder reformattedText = new StringBuilder();
using (StringWriter writer = new StringWriter(reformattedText))
{
foreach (char c in charsRead)
{
if (char.IsLetter(c) || char.IsWhiteSpace(c))
{
await writer.WriteLineAsync(char.ToLower(c));
}
}
}
Result.Text = reformattedText.ToString();
}
}
}
Imports System.IO
Imports System.Text
''' <summary>
''' Interaction logic for MainWindow.xaml
''' </summary>
Partial Public Class MainWindow
Inherits Window
Public Sub New()
InitializeComponent()
End Sub
Private Async Sub Window_Loaded(sender As Object, e As RoutedEventArgs)
Dim charsRead As Char() = New Char(UserInput.Text.Length) {}
Using reader As StringReader = New StringReader(UserInput.Text)
Await reader.ReadAsync(charsRead, 0, UserInput.Text.Length)
End Using
Dim reformattedText As StringBuilder = New StringBuilder()
Using writer As StringWriter = New StringWriter(reformattedText)
For Each c As Char In charsRead
If Char.IsLetter(c) Or Char.IsWhiteSpace(c) Then
Await writer.WriteLineAsync(Char.ToLower(c))
End If
Next
End Using
Result.Text = reformattedText.ToString()
End Sub
End Class
Siehe auch
- StringReader
- StringReader.Read
- Asynchrone Datei-Eingabe/Ausgabe
- Anleitung: Erstellen einer Verzeichnisauflistung
- Vorgehensweise: Lesen und Schreiben in eine neu erstellte Datendatei
- Vorgehensweise: Öffnen und Anfügen an eine Protokolldatei
- Vorgehensweise: Lesen von Text aus einer Datei
- Vorgehensweise: Schreiben von Text in eine Datei
- So geht's: Zeichen in eine Zeichenfolge schreiben
- Datei- und Datenstrom-E/A