动漫人物
这是一个旧的,但我想今天做类似的事情,发现事情已经发生了变化。从.net 4.5开始,有一个leaveOpen论点:public StreamReader( Stream stream, Encoding encoding, bool detectEncodingFromByteOrderMarks, int bufferSize, bool leaveOpen )唯一的问题是,为其他参数设置的内容并不完全明显。这是一些帮助:从StreamReader构造函数(Stream)的msdn页面:此构造函数将编码初始化为UTF8Encoding,使用stream参数将BaseStream属性初始化,并将内部缓冲区大小初始化为1024字节。这只是叶detectEncodingFromByteOrderMarks其判断的源代码是truepublic StreamReader(Stream stream)
: this(stream, true) {}public StreamReader(Stream stream, bool detectEncodingFromByteOrderMarks)
: this(stream, Encoding.UTF8, detectEncodingFromByteOrderMarks, DefaultBufferSize) {}如果暴露了一些默认值或者参数是可选的,那么我们就可以指定我们想要的那些默认值。