StringReader クラス

定義

文字列から読み取る TextReader を実装します。

public ref class StringReader : System::IO::TextReader
public class StringReader : System.IO.TextReader
[System.Serializable]
public class StringReader : System.IO.TextReader
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class StringReader : System.IO.TextReader
type StringReader = class
    inherit TextReader
[<System.Serializable>]
type StringReader = class
    inherit TextReader
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type StringReader = class
    inherit TextReader
Public Class StringReader
Inherits TextReader
継承
StringReader
継承
属性

次の例は、文字列全体を非同期的に読み取る方法を示しています。

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            ReadCharacters();
        }

        static async void ReadCharacters()
        {
            StringBuilder stringToRead = new StringBuilder();
            stringToRead.AppendLine("Characters in 1st line to read");
            stringToRead.AppendLine("and 2nd line");
            stringToRead.AppendLine("and the end");

            using (StringReader reader = new StringReader(stringToRead.ToString()))
            {
                string readText = await reader.ReadToEndAsync();
                Console.WriteLine(readText);
            }
        }
    }
}
// The example displays the following output:
//
// Characters in 1st line to read
// and 2nd line
// and the end
//
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        ReadCharacters()
    End Sub

    Async Sub ReadCharacters()
        Dim stringToRead = New StringBuilder()
        stringToRead.AppendLine("Characters in 1st line to read")
        stringToRead.AppendLine("and 2nd line")
        stringToRead.AppendLine("and the end")

        Using reader As StringReader = New StringReader(stringToRead.ToString())
            Dim readText As String = Await reader.ReadToEndAsync()
            Console.WriteLine(readText)
        End Using
    End Sub
End Module
' The example displays the following output:
'
' Characters in 1st line to read
' and 2nd line
' and the end
'

注釈

StringReader では、文字列を同期的または非同期的に読み取ります。 ReadメソッドまたはReadAsyncメソッドを使用して一度に文字を読み取り、ReadLineまたはReadLineAsyncメソッドを使用して一度に行を読み取り、ReadToEndまたはReadToEndAsyncメソッドを使用して文字列全体を読み取ることができます。

Note

この型は IDisposable インターフェイスを実装しますが、実際には破棄するリソースはありません。 つまり、Dispose()を直接呼び出すか、using (C#) や Using (Visual Basic) などの言語コンストラクトを使用して破棄する必要はありません。

次の表に、その他の一般的な I/O タスクまたは関連する I/O タスクの例を示します。

これを行うには... このトピックの例を参照してください...
テキスト ファイルを作成します。 方法: ファイルにテキストを書き込む
テキスト ファイルに書き込む。 方法: ファイルにテキストを書き込む
テキスト ファイルから読み取る。 方法: ファイルからテキストを読み取る
ファイルにテキストを追加します。 方法: ログ ファイルを開いて追加する

File.AppendText

FileInfo.AppendText
ファイルのサイズを取得します。 FileInfo.Length
ファイルの属性を取得します。 File.GetAttributes
ファイルの属性を設定します。 File.SetAttributes
ファイルが存在するかどうかを確認します。 File.Exists
バイナリ ファイルから読み取る。 方法: 新しく作成されたデータ ファイルの読み取りと書き込み
バイナリ ファイルに書き込みます。 方法: 新しく作成されたデータ ファイルの読み取りと書き込み

コンストラクター

名前 説明
StringReader(String)

指定した文字列から読み取る StringReader クラスの新しいインスタンスを初期化します。

メソッド

名前 説明
Close()

StringReaderを閉じます。

CreateObjRef(Type)

リモート オブジェクトとの通信に使用されるプロキシの生成に必要なすべての関連情報を含むオブジェクトを作成します。

(継承元 MarshalByRefObject)
Dispose()

TextReader オブジェクトによって使用されるすべてのリソースを解放します。

(継承元 TextReader)
Dispose(Boolean)

StringReaderによって使用されるアンマネージ リソースを解放し、必要に応じてマネージド リソースを解放します。

Equals(Object)

指定したオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLifetimeService()

このインスタンスの有効期間ポリシーを制御する現在の有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
InitializeLifetimeService()

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
MemberwiseClone()

現在の Objectの簡易コピーを作成します。

(継承元 Object)
MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。

(継承元 MarshalByRefObject)
Peek()

次に使用できる文字を返しますが、使用しません。

Read()

入力文字列から次の文字を読み取り、文字位置を 1 文字進めます。

Read(Char[], Int32, Int32)

入力文字列から文字ブロックを読み取り、文字位置を count進めます。

Read(Span<Char>)

入力文字列から現在位置からすべての文字を読み取り、現在位置を入力文字列の末尾に進めます。

ReadAsync(Char[], Int32, Int32)

現在の文字列から指定した最大文字数を非同期的に読み取り、指定したインデックスから始まるデータをバッファーに書き込みます。

ReadAsync(Memory<Char>, CancellationToken)

入力文字列から現在位置からすべての文字を非同期に読み取り、現在位置を入力文字列の末尾に進めます。

ReadBlock(Char[], Int32, Int32)

現在のテキスト リーダーから指定した最大文字数を読み取り、指定したインデックスから始まるデータをバッファーに書き込みます。

(継承元 TextReader)
ReadBlock(Span<Char>)

現在の位置から始まる入力文字列からすべての文字を読み取り、現在の位置を入力文字列の末尾に進めます。

ReadBlockAsync(Char[], Int32, Int32)

現在の文字列から指定した最大文字数を非同期的に読み取り、指定したインデックスから始まるデータをバッファーに書き込みます。

ReadBlockAsync(Memory<Char>, CancellationToken)

現在の位置から始まる入力文字列からすべての文字を非同期に読み取り、現在の位置を入力文字列の末尾に進めます。

ReadLine()

現在の文字列から 1 行の文字を読み取り、データを文字列として返します。

ReadLineAsync()

現在の文字列から非同期的に文字の行を読み取り、データを文字列として返します。

ReadToEnd()

現在の位置から文字列の末尾までのすべての文字を読み取り、1 つの文字列として返します。

ReadToEndAsync()

現在の位置から文字列の末尾まで、すべての文字を非同期的に読み取り、1 つの文字列として返します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IDisposable.Dispose()

このメンバーの説明については、 Dispose()を参照してください。

(継承元 TextReader)

適用対象

こちらもご覧ください