StreamReader Konstruktor
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan.
Overload
StreamReader(Stream) |
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan. |
StreamReader(Stream, Encoding, Boolean, Int32, Boolean) |
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan berdasarkan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan ukuran buffer, dan secara opsional membiarkan aliran terbuka. |
StreamReader(String, Encoding, Boolean, FileStreamOptions) |
Menginisialisasi instans StreamReader baru kelas untuk jalur file yang ditentukan, dengan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan dikonfigurasi dengan objek yang ditentukan FileStreamOptions . |
StreamReader(String, Encoding, Boolean, Int32) |
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan ukuran buffer. |
StreamReader(Stream, Encoding, Boolean, Int32) |
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan ukuran buffer. |
StreamReader(Stream, Encoding, Boolean) |
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan opsi pengodean karakter dan deteksi tanda urutan byte yang ditentukan. |
StreamReader(String, Encoding, Boolean) |
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan opsi pengodean karakter yang ditentukan dan deteksi tanda urutan byte. |
StreamReader(String, FileStreamOptions) |
Menginisialisasi instans StreamReader baru kelas untuk jalur file yang ditentukan, menggunakan pengodean default, memungkinkan deteksi tanda urutan byte di awal file, dan dikonfigurasi dengan objek yang ditentukan FileStreamOptions . |
StreamReader(String, Boolean) |
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan opsi deteksi tanda urutan byte yang ditentukan. |
StreamReader(Stream, Encoding) |
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan pengodean karakter yang ditentukan. |
StreamReader(Stream, Boolean) |
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan opsi deteksi tanda urutan byte yang ditentukan. |
StreamReader(String) |
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan. |
StreamReader(String, Encoding) |
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan pengodean karakter yang ditentukan. |
StreamReader(Stream)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan.
public:
StreamReader(System::IO::Stream ^ stream);
public StreamReader (System.IO.Stream stream);
new System.IO.StreamReader : System.IO.Stream -> System.IO.StreamReader
Public Sub New (stream As Stream)
Parameter
- stream
- Stream
Aliran yang akan dibaca.
Pengecualian
stream
tidak mendukung pembacaan.
stream
adalah null
.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
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;
}
FileStream^ fs = gcnew FileStream( path,FileMode::Open );
try
{
StreamReader^ sr = gcnew StreamReader( fs );
try
{
while ( sr->Peek() >= 0 )
{
Console::WriteLine( sr->ReadLine() );
}
}
finally
{
delete sr;
}
}
finally
{
delete fs;
}
}
catch ( Exception^ e )
{
Console::WriteLine( "The process failed: {0}", e );
}
}
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(new FileStream(path, FileMode.CreateNew)))
{
sw.WriteLine("This");
sw.WriteLine("is some text");
sw.WriteLine("to test");
sw.WriteLine("reading");
}
using (StreamReader sr = new StreamReader(new FileStream(path, FileMode.Open)))
{
while (sr.Peek() >= 0)
{
Console.WriteLine(sr.ReadLine());
}
}
}
catch (Exception e)
{
Console.WriteLine("The process failed: {0}", e.ToString());
}
}
}
Imports System.IO
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 fs As FileStream = New FileStream(path, FileMode.Open)
Dim sr As StreamReader = New StreamReader(fs)
Do While sr.Peek() >= 0
Console.WriteLine(sr.ReadLine())
Loop
sr.Close()
fs.Close()
Catch e As Exception
Console.WriteLine("The process failed: {0}", e.ToString())
End Try
End Sub
End Class
Keterangan
Konstruktor ini menginisialisasi pengodean ke UTF8Encoding, BaseStream properti menggunakan stream
parameter , dan ukuran buffer internal menjadi 1024 byte.
Objek StreamReader memanggil Dispose() pada objek yang disediakan Stream saat StreamReader.Dispose dipanggil.
Perhatian
Ketika Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(Stream, Encoding, Boolean, Int32, Boolean)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan berdasarkan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan ukuran buffer, dan secara opsional membiarkan aliran terbuka.
public:
StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, int bufferSize, bool leaveOpen);
public StreamReader (System.IO.Stream stream, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize, bool leaveOpen);
public StreamReader (System.IO.Stream stream, System.Text.Encoding? encoding = default, bool detectEncodingFromByteOrderMarks = true, int bufferSize = -1, bool leaveOpen = false);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding * bool * int * bool -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, bufferSize As Integer, leaveOpen As Boolean)
Public Sub New (stream As Stream, Optional encoding As Encoding = Nothing, Optional detectEncodingFromByteOrderMarks As Boolean = true, Optional bufferSize As Integer = -1, Optional leaveOpen As Boolean = false)
Parameter
- stream
- Stream
Aliran yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
- detectEncodingFromByteOrderMarks
- Boolean
true
untuk mencari tanda urutan byte di awal file; jika tidak, false
.
- bufferSize
- Int32
Ukuran buffer minimum.
- leaveOpen
- Boolean
true
untuk membiarkan aliran terbuka setelah StreamReader objek dibuang; jika tidak, false
.
Keterangan
Kecuali Anda mengatur leaveOpen
parameter ke true
, StreamReader objek memanggil Dispose() pada objek yang disediakan Stream saat StreamReader.Dispose dipanggil.
Ukuran buffer, dalam jumlah karakter 16-bit, diatur oleh bufferSize
parameter . Jika bufferSize
kurang dari ukuran minimum yang diperbolehkan (128 karakter), ukuran minimum yang diizinkan digunakan.
Konstruktor ini memungkinkan Anda mengubah pengodean saat pertama kali Membaca dari StreamReader objek. detectEncodingFromByteOrderMarks
Jika parameter adalah true
, konstruktor mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, UTF-16 big-endian, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda urutan byte yang sesuai. Jika tidak, pengodean yang disediakan pengguna digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Catatan
Saat membaca dari Stream, lebih efisien untuk menggunakan buffer yang berukuran sama dengan buffer internal aliran.
Perhatian
Ketika Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak ditafsirkan dengan benar, dan dapat menyebabkan pengecualian dilemparkan.
Berlaku untuk
StreamReader(String, Encoding, Boolean, FileStreamOptions)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk jalur file yang ditentukan, dengan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan dikonfigurasi dengan objek yang ditentukan FileStreamOptions .
public:
StreamReader(System::String ^ path, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, System::IO::FileStreamOptions ^ options);
public StreamReader (string path, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, System.IO.FileStreamOptions options);
new System.IO.StreamReader : string * System.Text.Encoding * bool * System.IO.FileStreamOptions -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, options As FileStreamOptions)
Parameter
- path
- String
Jalur file lengkap yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
- detectEncodingFromByteOrderMarks
- Boolean
Menunjukkan apakah akan mencari tanda urutan byte di awal file.
- options
- FileStreamOptions
Objek yang menentukan opsi konfigurasi untuk yang mendasar FileStream.
Pengecualian
path
atau encoding
atau options
adalah null
.
File tidak dapat ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
path
menyertakan sintaks yang salah atau tidak valid untuk nama file, nama direktori, atau label volume.
Lihat juga
Berlaku untuk
StreamReader(String, Encoding, Boolean, Int32)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan ukuran buffer.
public:
StreamReader(System::String ^ path, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
public StreamReader (string path, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
new System.IO.StreamReader : string * System.Text.Encoding * bool * int -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, bufferSize As Integer)
Parameter
- path
- String
Jalur file lengkap yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
- detectEncodingFromByteOrderMarks
- Boolean
Menunjukkan apakah akan mencari tanda urutan byte di awal file.
- bufferSize
- Int32
Ukuran buffer minimum, dalam jumlah karakter 16-bit.
Pengecualian
path
adalah string kosong ("").
path
atau encoding
adalah null
.
File tidak dapat ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
path
menyertakan sintaks yang salah atau tidak valid untuk nama file, nama direktori, atau label volume.
buffersize
kurang dari atau sama dengan nol.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Konstruktor ini menginisialisasi pengodean seperti yang ditentukan oleh encoding
parameter .
Konstruktor ini memungkinkan Anda mengubah pengodean saat pertama kali membaca dari StreamReader objek. Parameter detectEncodingFromByteOrderMarks
mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, UTF-16 big-endian, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda urutan byte yang sesuai. Jika tidak, pengodean yang disediakan pengguna digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Ukuran buffer, dalam jumlah karakter 16-bit, diatur oleh bufferSize
parameter . Jika bufferSize
kurang dari ukuran minimum yang diperbolehkan (128 karakter), ukuran minimum yang diizinkan digunakan.
Parameter path
dapat berupa nama file, termasuk file pada berbagi Universal Naming Convention (UNC).
Parameter path
tidak diperlukan untuk menjadi file yang disimpan di disk; itu bisa menjadi bagian mana pun dari sistem yang mendukung akses menggunakan aliran.
Perhatian
Ketika Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(Stream, Encoding, Boolean, Int32)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan pengodean karakter yang ditentukan, opsi deteksi tanda urutan byte, dan ukuran buffer.
public:
StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
public StreamReader (System.IO.Stream stream, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding * bool * int -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean, bufferSize As Integer)
Parameter
- stream
- Stream
Aliran yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
- detectEncodingFromByteOrderMarks
- Boolean
Menunjukkan apakah akan mencari tanda urutan byte di awal file.
- bufferSize
- Int32
Ukuran buffer minimum.
Pengecualian
Aliran tidak mendukung pembacaan.
stream
atau encoding
adalah null
.
bufferSize
kurang dari atau sama dengan nol.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Ukuran buffer, dalam jumlah karakter 16-bit, diatur oleh bufferSize
parameter . Jika bufferSize
kurang dari ukuran minimum yang diperbolehkan (128 karakter), ukuran minimum yang diizinkan digunakan.
Konstruktor ini memungkinkan Anda mengubah pengodean saat pertama kali membaca dari StreamReader objek. Parameter detectEncodingFromByteOrderMarks
mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, UTF-16 big-endian, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda urutan byte yang sesuai. Jika tidak, pengodean yang disediakan pengguna digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Objek StreamReader memanggil Dispose() pada objek yang disediakan Stream saat StreamReader.Dispose dipanggil.
Catatan
Saat membaca dari Stream, lebih efisien untuk menggunakan buffer yang berukuran sama dengan buffer internal aliran.
Perhatian
Ketika Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(Stream, Encoding, Boolean)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan opsi pengodean karakter dan deteksi tanda urutan byte yang ditentukan.
public:
StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks);
public StreamReader (System.IO.Stream stream, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding * bool -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean)
Parameter
- stream
- Stream
Aliran yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
- detectEncodingFromByteOrderMarks
- Boolean
Menunjukkan apakah akan mencari tanda urutan byte di awal file.
Pengecualian
stream
tidak mendukung pembacaan.
stream
atau encoding
adalah null
.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Konstruktor ini menginisialisasi pengodean seperti yang ditentukan oleh encoding
parameter, BaseStream properti menggunakan stream
parameter , dan ukuran buffer internal menjadi 1024 byte.
Parameter detectEncodingFromByteOrderMarks
mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, UTF-16 big-endian, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda urutan byte yang sesuai. Jika tidak, pengodean yang disediakan pengguna digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Objek StreamReader memanggil Dispose() pada objek yang disediakan Stream saat StreamReader.Dispose dipanggil.
Perhatian
Ketika Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(String, Encoding, Boolean)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan opsi pengodean karakter yang ditentukan dan deteksi tanda urutan byte.
public:
StreamReader(System::String ^ path, System::Text::Encoding ^ encoding, bool detectEncodingFromByteOrderMarks);
public StreamReader (string path, System.Text.Encoding encoding, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : string * System.Text.Encoding * bool -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding, detectEncodingFromByteOrderMarks As Boolean)
Parameter
- path
- String
Jalur file lengkap yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
- detectEncodingFromByteOrderMarks
- Boolean
Menunjukkan apakah akan mencari tanda urutan byte di awal file.
Pengecualian
path
adalah string kosong ("").
path
atau encoding
adalah null
.
File tidak dapat ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
path
menyertakan sintaks yang salah atau tidak valid untuk nama file, nama direktori, atau label volume.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Konstruktor ini menginisialisasi pengodean seperti yang ditentukan oleh encoding
parameter , dan ukuran buffer internal menjadi 1024 byte.
Parameter detectEncodingFromByteOrderMarks
mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, UTF-16 big-endian, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda urutan byte yang sesuai. Jika tidak, pengodean yang disediakan pengguna digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Parameter path
dapat berupa nama file, termasuk file pada berbagi Universal Naming Convention (UNC).
Parameter path
tidak diperlukan untuk menjadi file yang disimpan di disk; itu bisa menjadi bagian mana pun dari sistem yang mendukung akses menggunakan aliran.
Perhatian
Ketika Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(String, FileStreamOptions)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk jalur file yang ditentukan, menggunakan pengodean default, memungkinkan deteksi tanda urutan byte di awal file, dan dikonfigurasi dengan objek yang ditentukan FileStreamOptions .
public:
StreamReader(System::String ^ path, System::IO::FileStreamOptions ^ options);
public StreamReader (string path, System.IO.FileStreamOptions options);
new System.IO.StreamReader : string * System.IO.FileStreamOptions -> System.IO.StreamReader
Public Sub New (path As String, options As FileStreamOptions)
Parameter
- path
- String
Jalur file lengkap yang akan dibaca.
- options
- FileStreamOptions
Objek yang menentukan opsi konfigurasi untuk yang mendasar FileStream.
Pengecualian
stream
tidak dapat dibaca.
-atau-
<code data-dev-comment-type="paramref">path</code> is an empty string ("").
path
atau options
adalah null
.
File tidak dapat ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
path
menyertakan sintaks yang salah atau tidak valid untuk nama file, nama direktori, atau label volume.
Lihat juga
Berlaku untuk
StreamReader(String, Boolean)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan opsi deteksi tanda urutan byte yang ditentukan.
public:
StreamReader(System::String ^ path, bool detectEncodingFromByteOrderMarks);
public StreamReader (string path, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : string * bool -> System.IO.StreamReader
Public Sub New (path As String, detectEncodingFromByteOrderMarks As Boolean)
Parameter
- path
- String
Jalur file lengkap yang akan dibaca.
- detectEncodingFromByteOrderMarks
- Boolean
Menunjukkan apakah akan mencari tanda urutan byte di awal file.
Pengecualian
path
adalah string kosong ("").
path
adalah null
.
File tidak dapat ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
path
menyertakan sintaks yang salah atau tidak valid untuk nama file, nama direktori, atau label volume.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Konstruktor ini menginisialisasi pengodean ke UTF8Encoding, BaseStream properti menggunakan stream
parameter , dan ukuran buffer internal menjadi 1024 byte.
Parameter path
dapat berupa nama file, termasuk file pada berbagi Universal Naming Convention (UNC).
Parameter path
tidak diperlukan untuk menjadi file yang disimpan di disk; itu bisa menjadi bagian mana pun dari sistem yang mendukung akses menggunakan aliran.
Parameter detectEncodingFromByteOrderMarks
mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, UTF-16 big-endian, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda urutan byte yang sesuai. Jika tidak, UTF8Encoding digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(Stream, Encoding)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan pengodean karakter yang ditentukan.
public:
StreamReader(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding);
public StreamReader (System.IO.Stream stream, System.Text.Encoding encoding);
new System.IO.StreamReader : System.IO.Stream * System.Text.Encoding -> System.IO.StreamReader
Public Sub New (stream As Stream, encoding As Encoding)
Parameter
- stream
- Stream
Aliran yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
Pengecualian
stream
tidak mendukung pembacaan.
stream
atau encoding
adalah null
.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Pengodean karakter diatur oleh encoding
parameter , dan ukuran buffer diatur ke 1024 byte. Objek StreamReader mencoba mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda pesanan byte yang sesuai. Jika tidak, pengodean yang disediakan pengguna digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Objek StreamReader memanggil Dispose() pada objek yang disediakan Stream ketika StreamReader.Dispose dipanggil.
Perhatian
Saat Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(Stream, Boolean)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk aliran yang ditentukan, dengan opsi deteksi tanda urutan byte yang ditentukan.
public:
StreamReader(System::IO::Stream ^ stream, bool detectEncodingFromByteOrderMarks);
public StreamReader (System.IO.Stream stream, bool detectEncodingFromByteOrderMarks);
new System.IO.StreamReader : System.IO.Stream * bool -> System.IO.StreamReader
Public Sub New (stream As Stream, detectEncodingFromByteOrderMarks As Boolean)
Parameter
- stream
- Stream
Aliran yang akan dibaca.
- detectEncodingFromByteOrderMarks
- Boolean
Menunjukkan apakah akan mencari tanda urutan byte di awal file.
Pengecualian
stream
tidak mendukung pembacaan.
stream
adalah null
.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Konstruktor ini menginisialisasi pengodean ke UTF8Encoding, BaseStream properti menggunakan stream
parameter , dan ukuran buffer internal menjadi 1024 byte.
Parameter detectEncodingFromByteOrderMarks
mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda pesanan byte yang sesuai. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Objek StreamReader memanggil Dispose() pada objek yang disediakan Stream ketika StreamReader.Dispose dipanggil.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(String)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan.
public:
StreamReader(System::String ^ path);
public StreamReader (string path);
new System.IO.StreamReader : string -> System.IO.StreamReader
Public Sub New (path As String)
Parameter
- path
- String
Jalur file lengkap yang akan dibaca.
Pengecualian
path
adalah string kosong ("").
path
adalah null
.
File tidak dapat ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
path
menyertakan sintaks yang salah atau tidak valid untuk nama file, nama direktori, atau label volume.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
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 );
}
}
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());
}
}
}
Imports System.IO
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
Keterangan
Jalur file lengkap ditentukan oleh path
parameter . Konstruktor ini menginisialisasi pengodean ke UTF8Encoding dan ukuran buffer menjadi 1024 byte.
Parameter path
dapat berupa nama file, termasuk file pada berbagi Universal Naming Convention (UNC).
Parameter path
tidak diperlukan untuk menjadi file yang disimpan di disk; itu bisa menjadi bagian mana pun dari sistem yang mendukung akses menggunakan aliran.
Perhatian
Saat Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.
Lihat juga
Berlaku untuk
StreamReader(String, Encoding)
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
- Sumber:
- StreamReader.cs
Menginisialisasi instans StreamReader baru kelas untuk nama file yang ditentukan, dengan pengodean karakter yang ditentukan.
public:
StreamReader(System::String ^ path, System::Text::Encoding ^ encoding);
public StreamReader (string path, System.Text.Encoding encoding);
new System.IO.StreamReader : string * System.Text.Encoding -> System.IO.StreamReader
Public Sub New (path As String, encoding As Encoding)
Parameter
- path
- String
Jalur file lengkap yang akan dibaca.
- encoding
- Encoding
Pengodean karakter yang akan digunakan.
Pengecualian
path
adalah string kosong ("").
path
atau encoding
adalah null
.
File tidak dapat ditemukan.
Jalur yang ditentukan tidak valid, seperti berada di drive yang tidak dipetakan.
path
menyertakan sintaks yang salah atau tidak valid untuk nama file, nama direktori, atau label volume.
Contoh
Contoh kode berikut menunjukkan konstruktor ini StreamReader .
void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader^ srAsciiFromFileFalse512 = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader^ srAsciiFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a file
StreamReader^ srAsciiFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt",System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader^ srFromFileFalse = gcnew StreamReader( "C:\\Temp\\Test.txt",false );
//Get a new StreamReader from a file
StreamReader^ srFromFile = gcnew StreamReader( "C:\\Temp\\Test.txt" );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader^ srAsciiFromStreamFalse512 = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false,512 );
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader^ srAsciiFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII,false );
//Get a new StreamReader in ASCII format from a FileStream
StreamReader^ srAsciiFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),System::Text::Encoding::ASCII );
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader^ srFromStreamFalse = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ),false );
//Get a new StreamReader from a FileStream
StreamReader^ srFromStream = gcnew StreamReader( File::OpenRead( "C:\\Temp\\Test.txt" ) );
}
private void getNewStreamReader()
{
//Get a new StreamReader in ASCII format from a
//file using a buffer and byte order mark detection
StreamReader srAsciiFromFileFalse512 =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//file with byte order mark detection = false
StreamReader srAsciiFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a file
StreamReader srAsciiFromFile =
new StreamReader("C:\\Temp\\Test.txt",
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//file with byte order mark detection = false
StreamReader srFromFileFalse =
new StreamReader("C:\\Temp\\Test.txt", false);
//Get a new StreamReader from a file
StreamReader srFromFile =
new StreamReader("C:\\Temp\\Test.txt");
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false and a buffer
StreamReader srAsciiFromStreamFalse512 = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false, 512);
//Get a new StreamReader in ASCII format from a
//FileStream with byte order mark detection = false
StreamReader srAsciiFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII, false);
//Get a new StreamReader in ASCII format from a FileStream
StreamReader srAsciiFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
System.Text.Encoding.ASCII);
//Get a new StreamReader from a
//FileStream with byte order mark detection = false
StreamReader srFromStreamFalse = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),
false);
//Get a new StreamReader from a FileStream
StreamReader srFromStream = new StreamReader(
(System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"));
}
Private Sub getNewStreamReader()
Dim S As Stream = File.OpenRead("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'file using a buffer and byte order mark detection
Dim SrAsciiFromFileFalse512 As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'file with byte order mark detection = false
Dim SrAsciiFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a file
Dim SrAsciiFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt", _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'file with byte order mark detection = false
Dim SrFromFileFalse As StreamReader = New StreamReader("C:\Temp\Test.txt", False)
'Get a new StreamReader from a file
Dim SrFromFile As StreamReader = New StreamReader("C:\Temp\Test.txt")
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false and a buffer
Dim SrAsciiFromStreamFalse512 As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII, False, 512)
'Get a new StreamReader in ASCII format from a
'FileStream with byte order mark detection = false
Dim SrAsciiFromStreamFalse = New StreamReader(S, _
System.Text.Encoding.ASCII, False)
'Get a new StreamReader in ASCII format from a FileStream
Dim SrAsciiFromStream As StreamReader = New StreamReader(S, _
System.Text.Encoding.ASCII)
'Get a new StreamReader from a
'FileStream with byte order mark detection = false
Dim SrFromStreamFalse As StreamReader = New StreamReader(S, False)
'Get a new StreamReader from a FileStream
Dim SrFromStream As StreamReader = New StreamReader(S)
End Sub
Keterangan
Konstruktor ini menginisialisasi pengodean seperti yang ditentukan oleh encoding
parameter , dan ukuran buffer internal menjadi 1024 byte. Objek StreamReader mencoba mendeteksi pengodean dengan melihat empat byte pertama aliran. Ini secara otomatis mengenali UTF-8, little-endian UTF-16, big-endian UTF-16, little-endian UTF-32, dan teks UTF-32 big-endian jika file dimulai dengan tanda pesanan byte yang sesuai. Jika tidak, pengodean yang disediakan pengguna digunakan. Encoding.GetPreamble Lihat metode untuk informasi selengkapnya.
Parameter path
dapat berupa nama file, termasuk file pada berbagi Universal Naming Convention (UNC).
Parameter path
tidak diperlukan untuk menjadi file yang disimpan di disk; itu bisa menjadi bagian mana pun dari sistem yang mendukung akses menggunakan aliran.
Perhatian
Saat Anda mengkompilasi sekumpulan karakter dengan pengaturan budaya tertentu dan mengambil karakter yang sama dengan pengaturan budaya yang berbeda, karakter mungkin tidak dapat ditafsirkan, dan dapat menyebabkan pengecualian dilemparkan.
Untuk daftar tugas I/O umum, lihat Tugas I/O Umum.