我正在尝试使用StreamWriter在缓存文件(.txt)中写入字符串。它正在工作,但是缓存文件中的字符串似乎与我要复制的字符串不同。
我的输入字符串包含一个特殊字符'ƒ',写在缓存文件中的输出字符串包含一个经典的'f'。
我指定了一种编码:
var writer = new StreamWriter(stream, Encoding.GetEncoding("ISO-8859-1"))
我需要指定其他编码吗?
最佳答案
只需使用UTF-8编码。它支持您的字符,并且如果其他大多数字符都在ASCII范围内,则您的文件将不会比使用ISO-8859-1编码的文件大,因为UTF-8编码仅使用1个字节对ASCII范围内的字符进行编码(如果有问题的话)。 Here's more info from Wikipedia。