C# StreamReader的默认值是什么?
我需要使用这个构造函数C# StreamReader的默认值是什么?,c#,default,streamreader,C#,Default,Streamreader,我需要使用这个构造函数public StreamReader(Stream-Stream,Encoding-Encoding,bool-detectencodingfrom-byteordermarks,int-bufferSize,bool-leaveOpen)将leaveOpen设置为true。为了做到这一点,我还需要设置其他参数(Encoding-Encoding,bool-detectencodingfromteordermarks,int-bufferSize)。我想按原样使用Stre
public StreamReader(Stream-Stream,Encoding-Encoding,bool-detectencodingfrom-byteordermarks,int-bufferSize,bool-leaveOpen)
将leaveOpen
设置为true
。为了做到这一点,我还需要设置其他参数(Encoding-Encoding,bool-detectencodingfromteordermarks,int-bufferSize
)。我想按原样使用StreamReader
,因此我不想给出一些随机值。这些参数的默认值是什么
顺便说一句,我知道我可以使用
StreamReader
,而不用使用
。GC将在不接触流的情况下清除它。默认值如下:
- 编码:Encoding.UTF8
- 从字节顺序标记检测到编码:true
- DefaultBufferSize:1024
通过分别访问
Encoding.UTF8
、true
和1024
,您可以查看构造函数和值
来源:
Encoding
的默认值为Encoding。UTF8
和bufferSize
的默认值也是1024,但是detectEncodingFromByteOrderMarks
的默认值似乎不是。您可以检查以确定这一点
它表明:
- detectEncodingFromByteOrderMarks是真的
- DefaultBufferSize为1024或4096
- 编码就是编码。UTF8
- leaveOpen是假的
就个人而言,我会为桌面应用程序设置DefaultBufferSize 4096。
Stream
您需要通过才能读取<代码>编码编码默认AFAIK为UTF-8
<代码>int bufferSize最小值为128个字符<默认情况下,code>bool leaveOpen为false
,因此它将在读取流后调用Dispose()
说得很清楚