streamWriter.Write(content,Encoding.UTF8)vs streamWriter.Write(content)

时间:2018-01-01 07:51:53

标签: c#

有什么区别:

var content = "Some string";
streamWriter.Write(content, Encoding.UTF8);

vs

var content = "Some string";
streamWriter.Write(content);

1 个答案:

答案 0 :(得分:0)

根据Microsoft documentation of StreamWriterWrite没有采用字符串和编码的重载。如果要显式指定编码,则需要在创建时将其传递给StreamWriter的构造函数重载之一。

但是, 的情况下,您可能会遇到重载方法,一个接受编码而一个不接受编码。在回答您的问题时,区别在于第一个选项允许您明确在序列化字符串时使用的编码,第二个选项使用默认编码。

如果您总是在C#代码中进行编码和解码,那么您选择哪一个并不重要。您可以查看每个编码的优缺点,并决定使用特定的编码,或者您可以让C#为您选择一个。

如果你需要用C#编码,并用另一种语言解码(反之亦然),那么你肯定需要明确你使用的编码。