Поделиться через


FileInfo.OpenText Метод

Определение

Создает поток StreamReader с кодировкой UTF-8, который считывает данные из существующего текстового файла.

public:
 System::IO::StreamReader ^ OpenText();
public System.IO.StreamReader OpenText ();
member this.OpenText : unit -> System.IO.StreamReader
Public Function OpenText () As StreamReader

Возвращаемое значение

Новый объект StreamReader с кодировкой UTF8.

Исключения

У вызывающего объекта отсутствует необходимое разрешение.

Файл не найден.

Name доступен только для чтения или является каталогом.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Примеры

Следующий пример считывает текст из файла.

using namespace System;
using namespace System::IO;
using namespace System::Text;

public ref class OpenTextTest
{
public:
    static void Main()
    {
        String^ path = "c:\\MyTest.txt";

        FileInfo^ fi = gcnew FileInfo(path);

        // Check for existing file
        if (!fi->Exists)
        {
            // Create the file.
            FileStream^ fs = fi->Create();
            array<Byte>^ info =
                (gcnew UTF8Encoding(true))->GetBytes("This is some text in the file.");

            // Add some information to the file.
            fs->Write(info, 0, info->Length);
            fs->Close();
        }

        // Open the stream and read it back.
        StreamReader^ sr = fi->OpenText();
        String^ s = "";
        while ((s = sr->ReadLine()) != nullptr)
        {
            Console::WriteLine(s);
        }
    }
};

int main()
{
    OpenTextTest::Main();
}
//This code produces output similar to the following; 
//results may vary based on the computer/file structure/etc.:
//
//This is some text in the file.
//
using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\MyTest.txt";

        FileInfo fi = new FileInfo(path);

        // Check for existing file
        if (!fi.Exists)
        {
            // Create the file.
            using (FileStream fs = fi.Create())
            {
                Byte[] info =
                    new UTF8Encoding(true).GetBytes("This is some text in the file.");

                // Add some information to the file.
                fs.Write(info, 0, info.Length);
                fs.Close();
            }
        }

        // Open the stream and read it back.
        using (StreamReader sr = fi.OpenText())
        {
            string s = "";
            while ((s = sr.ReadLine()) != null)
            {
                Console.WriteLine(s);
            }
        }
    }
}
//This code produces output similar to the following;
//results may vary based on the computer/file structure/etc.:
//
//This is some text in the file.
//
Imports System.IO
Imports System.Text

Public Class OpenTextTest
    Public Shared Sub Main()
        Dim path As String = "c:\MyTest.txt"

        Dim fi As New FileInfo(path)

        ' Check for existing file
        If fi.Exists = false Then
            ' Create the file.
            Dim fs As FileStream = fi.Create()
            Dim info() As Byte = _
                    New UTF8Encoding(true).GetBytes("This is some text in the file.")

            ' Add some information to the file.
            fs.Write(info, 0, info.Length)
            fs.Close()
        End If

        ' Open the stream and read it back.
        Dim sr As StreamReader = fi.OpenText()
        Dim s As String = ""
        While sr.EndOfStream = false
            s = sr.ReadLine()
            Console.WriteLine(s)
        End While
        sr.Close()
    End Sub
End Class
'This code produces output similar to the following;
'results may vary based on the computer/file structure/etc.:
'
'This is some text in the file.
'

Применяется к

См. также раздел