StringReader.ReadLine 方法

定义

从当前字符串中读取一行字符并将数据作为字符串返回。

public:
 override System::String ^ ReadLine();
public override string ReadLine ();
public override string? ReadLine ();
override this.ReadLine : unit -> string
Public Overrides Function ReadLine () As String

返回

当前字符串中的下一行;或为 null (如果到达了字符串的末尾)。

例外

当前读取器已关闭。

没有足够的内存来为返回的字符串分配缓冲区。

示例

此代码示例是为 StringReader 类提供的一个更大示例的一部分。

// From textReaderText, create a continuous paragraph 
// with two spaces between each sentence.
   String^ aLine;
String^ aParagraph;
StringReader^ strReader = gcnew StringReader( textReaderText );
while ( true )
{
   aLine = strReader->ReadLine();
   if ( aLine != nullptr )
   {
      aParagraph = String::Concat( aParagraph, aLine,  " " );
   }
   else
   {
      aParagraph = String::Concat( aParagraph,  "\n" );
      break;
   }
}

Console::WriteLine(  "Modified text:\n\n{0}", aParagraph );
// From textReaderText, create a continuous paragraph
// with two spaces between each sentence.
string aLine, aParagraph = null;
StringReader strReader = new StringReader(textReaderText);
while(true)
{
    aLine = strReader.ReadLine();
    if(aLine != null)
    {
        aParagraph = aParagraph + aLine + " ";
    }
    else
    {
        aParagraph = aParagraph + "\n";
        break;
    }
}
Console.WriteLine("Modified text:\n\n{0}", aParagraph);
' From textReaderText, create a continuous paragraph 
' with two spaces between each sentence.
Dim aLine, aParagraph As String
Dim strReader As New StringReader(textReaderText)
While True
    aLine = strReader.ReadLine()
    If aLine Is Nothing Then
        aParagraph = aParagraph & vbCrLf
        Exit While
    Else
        aParagraph = aParagraph & aLine & " "
    End If
End While
Console.WriteLine("Modified text:" & vbCrLf & vbCrLf & _ 
    aParagraph)

注解

此方法替代 TextReader.ReadLine 方法。

行定义为后跟换行 (“\n”) 的字符序列、 (“\r”) 的回车符、紧跟换行符 (“\r\n”) 的回车符或流结束标记。 返回的字符串不包含终止回车符或换行符。 如果已到达流结束标记,则返回的值为 null 。 也就是说,如果最后一行读取和流结束标记之间没有任何内容,该方法将返回 null

如果当前方法引发 , OutOfMemoryException则读取器在基础字符串中的位置将增加方法能够读取的字符数,但已读入内部 ReadLine 缓冲区的字符将被丢弃。 由于无法更改读取器在字符串中的位置,因此已读取的字符不可恢复,并且只能通过重新初始化 StringReader来访问。 若要避免这种情况,请使用 Read 方法并将读取字符存储在预分配的缓冲区中。

下表列出了其他典型或相关 I/O 任务的示例。

若要执行此操作... 请参见本主题中的示例...
创建文本文件。 如何:将文本写入文件
写入文本文件。 如何:将文本写入文件
从文本文件读取。 如何:从文件中读取文本
将文本追加到文件。 如何:打开并追加到日志文件

File.AppendText

FileInfo.AppendText
获取文件的大小。 FileInfo.Length
获取文件的属性。 File.GetAttributes
设置文件的属性。 File.SetAttributes
确定文件是否存在。 File.Exists
从二进制文件读取。 如何:对新建的数据文件进行读取和写入
写入二进制文件。 如何:对新建的数据文件进行读取和写入

适用于

另请参阅