StreamReader.ReadLine メソッド
アセンブリ: mscorlib (mscorlib.dll 内)

Dim instance As StreamReader Dim returnValue As String returnValue = instance.ReadLine
入力ストリームからの次の行。入力ストリームの末尾に到達した場合は null 参照 (Visual Basic では Nothing)。


1 行は、末尾にライン フィード ("\n")、またはキャリッジ リターンとライン フィード ("\r\n") が付いた一連の文字として定義されています。返される文字列には、末尾のキャリッジ リターンやライン フィードは含まれません。入力ストリームの末尾に到達した場合、戻り値は null 参照 (Visual Basic では Nothing) です。
現在のメソッドが OutOfMemoryException をスローした場合、基になる Stream オブジェクト内のリーダーの位置は読み取ることができた文字数分だけ進みますが、既に内部 ReadLine バッファに読み取られた文字は破棄されます。ストリーム内のリーダーの位置は変更できないため、既に読み取られた文字は復元できません。もう一度アクセスするには、StreamReader オブジェクトを再初期化する必要があります。ストリーム内の初期位置が不明であるか、ストリームがシークをサポートしない場合は、基になる Stream オブジェクトも再初期化する必要があります。
このような状況を回避し、信頼性の高いコードを作成するには、Read メソッドを使用して、割り当て済みのバッファに読み取った文字を格納する必要があります。
このメソッドの使用例については、「使用例」を参照してください。その他の一般的な I/O タスクまたは関連する I/O タスクの例を次の表に示します。
File.AppendText FileInfo.AppendText | |
FileInfo.Length | |
File.GetAttributes | |
File.SetAttributes | |

ファイルの末尾に到達するまでファイルから行を読み取るコード例を次に示します。
Imports System Imports System.IO Imports System.Text Public Class Test Public Shared Sub Main() Dim path As String = "c:\temp\MyTest.txt" Try If File.Exists(path) Then File.Delete(path) End If Dim sw As StreamWriter = New StreamWriter(path) sw.WriteLine("This") sw.WriteLine("is some text") sw.WriteLine("to test") sw.WriteLine("Reading") sw.Close() Dim sr As StreamReader = New StreamReader(path) Do While sr.Peek() >= 0 Console.WriteLine(sr.ReadLine()) Loop sr.Close() Catch e As Exception Console.WriteLine("The process failed: {0}", e.ToString()) End Try End Sub End Class
using System; using System.IO; class Test { public static void Main() { string path = @"c:\temp\MyTest.txt"; try { if (File.Exists(path)) { File.Delete(path); } using (StreamWriter sw = new StreamWriter(path)) { sw.WriteLine("This"); sw.WriteLine("is some text"); sw.WriteLine("to test"); sw.WriteLine("Reading"); } using (StreamReader sr = new StreamReader(path)) { while (sr.Peek() >= 0) { Console.WriteLine(sr.ReadLine()); } } } catch (Exception e) { Console.WriteLine("The process failed: {0}", e.ToString()); } } }
using namespace System; using namespace System::IO; int main() { String^ path = "c:\\temp\\MyTest.txt"; try { if ( File::Exists( path ) ) { File::Delete( path ); } StreamWriter^ sw = gcnew StreamWriter( path ); try { sw->WriteLine( "This" ); sw->WriteLine( "is some text" ); sw->WriteLine( "to test" ); sw->WriteLine( "Reading" ); } finally { delete sw; } StreamReader^ sr = gcnew StreamReader( path ); try { while ( sr->Peek() >= 0 ) { Console::WriteLine( sr->ReadLine() ); } } finally { delete sr; } } catch ( Exception^ e ) { Console::WriteLine( "The process failed: {0}", e ); } }
import System.*; import System.IO.*; class Test { public static void main(String[] args) { String path = "c:\\temp\\MyTest.txt"; try { if (File.Exists(path)) { File.Delete(path); } StreamWriter sw = new StreamWriter(path); try { sw.WriteLine("This"); sw.WriteLine("is some text"); sw.WriteLine("to test"); sw.WriteLine("Reading"); } finally { sw.Dispose(); } StreamReader sr = new StreamReader(path); try { while (sr.Peek() >= 0) { Console.WriteLine(sr.ReadLine()); } } finally { sr.Dispose(); } } catch (System.Exception e) { Console.WriteLine("The process failed: {0}", e.ToString()); } } //main } //Test

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からStreamReader.ReadLine メソッドを検索する場合は、下記のリンクをクリックしてください。

- StreamReader.ReadLine メソッドのページへのリンク