如何:从字符串中读取字符

下面的代码示例允许您在现有字符串中从指定的位置开始读取一定数目的字符。 请使用 StringReader 完成此操作,如下所示。

此代码定义一个字符串并将其转换为一个字符数组,然后,可以使用适当的 StringReader.Read 方法读取该字符数组。

本示例只从字符串中读取指定数目的字符,如下所示。

示例

Imports System
Imports System.IO

Public Class CharsFromStr
    Public Shared Sub Main()
        ' Create a string to read characters from.
        Dim str As String = "Some number of characters"
        ' Make a char array the size of the source string
        Dim b(str.Length) As Char
        ' Create an instance of StringReader and attach it to the string.
        Dim sr As New StringReader(str)
        ' Read 13 characters into the array that holds the string,
        ' starting at the third array member.
        sr.Read(b, 0, 13)
        ' Display the output.
        Console.WriteLine(b)
        ' Read the rest of the string from the current position in the
        ' source string into the array, starting at the 6th array member.
        sr.Read(b, 5, str.Length - 13)
        ' Display the output.
        Console.WriteLine(b)
        ' Close the StringReader.
        sr.Close()
    End Sub
End Class
' The example has the following output:
'
' Some number o
' Some f characters
using System;
using System.IO;

public class CharsFromStr
{
    public static void Main()
    {
        // Create a string to read characters from.
        string str = "Some number of characters";
        // Make a char array the size of the source string
        char[] b = new char[str.Length];
        // Create an instance of StringReader and attach it to the string.
        StringReader sr = new StringReader(str);
        // Read 13 characters into the array that holds the string,
        // starting at the third array member.
        sr.Read(b, 0, 13);
        // Display the output.
        Console.WriteLine(b);
        // Read the rest of the string from the current position in the
        // source string into the array, starting at the 6th array member.
        sr.Read(b, 5, str.Length - 13);
        // Display the output.
        Console.WriteLine(b);
        // Close the StringReader.
        sr.Close();
    }
}
// The example has the following output:
//
// Some number o
// Some f characters
using namespace System;
using namespace System::IO;

public ref class CharsFromStr
{
public:
    static void Main()
    {
        // Create a string to read characters from.
        String^ str = "Some number of characters";
        // Make a char array the size of the source string
        array<Char>^ b = gcnew array<Char>(str->Length);
        // Create an instance of StringReader and attach it to the string.
        StringReader^ sr = gcnew StringReader(str);
        // Read 13 characters into the array that holds the string,
        // starting at the third array member.
        sr->Read(b, 0, 13);
        // Display the output.
        Console::WriteLine(b);
        // Read the rest of the string from the current position in the
        // source string into the array, starting at the 6th array member.
        sr->Read(b, 5, str->Length - 13);
        // Display the output.
        Console::WriteLine(b);
        // Close the StringReader.
        sr->Close();
    }
};

int main()
{
    CharsFromStr::Main();
}
// The example has the following output:
//
// Some number o
// Some f characters

请参见

任务

如何:创建目录列表

如何:对新建的数据文件进行读取和写入

如何:打开并追加到日志文件

如何:从文件读取文本

如何:向文件写入文本

如何:向字符串写入字符

参考

StringReader

StringReader.Read

概念

基本的文件 I/O