有什么区别:
var content = "Some string";
streamWriter.Write(content, Encoding.UTF8);
vs
var content = "Some string";
streamWriter.Write(content);
答案 0 :(得分:0)
根据Microsoft documentation of StreamWriter,Write
没有采用字符串和编码的重载。如果要显式指定编码,则需要在创建时将其传递给StreamWriter的构造函数重载之一。
但是, 的情况下,您可能会遇到重载方法,一个接受编码而一个不接受编码。在回答您的问题时,区别在于第一个选项允许您明确在序列化字符串时使用的编码,第二个选项使用默认编码。
如果您总是在C#代码中进行编码和解码,那么您选择哪一个并不重要。您可以查看每个编码的优缺点,并决定使用特定的编码,或者您可以让C#为您选择一个。
如果你需要用C#编码,并用另一种语言解码(反之亦然),那么你肯定需要明确你使用的编码。