Bu eski bir şey, ama bugün benzer bir şey yapmak istedim ve işlerin değiştiğini buldum. .Net 4.5'ten beri bir leaveOpen
argüman var:
public StreamReader( Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize, bool leaveOpen )
Tek sorun, diğer parametreler için ne ayarlanmasının tamamen açık olmamasıdır. İşte bazı yardım:
Gönderen msdn sayfa StreamReader Oluşturucu (Akış) için:
Bu kurucu UTF8Encoding kodlamasını, stream parametresini kullanarak BaseStream özelliğini ve dahili tampon boyutunu 1024 bayta başlatır.
Bu sadece kaynak kodu ile detectEncodingFromByteOrderMarks
yargılanantrue
public StreamReader(Stream stream)
: this(stream, true) {
}
public StreamReader(Stream stream, bool detectEncodingFromByteOrderMarks)
: this(stream, Encoding.UTF8, detectEncodingFromByteOrderMarks, DefaultBufferSize) {
}
Bu varsayılanlardan bazılarının açıkta kalması veya bağımsız değişkenlerin isteğe bağlı olması güzel olurdu, böylece sadece istediklerimizi belirleyebiliriz.