保存文本文件时的默认编码是什么
本文关键字:默认 编码 是什么 文本 文件 保存 | 更新日期: 2023-09-27 18:14:47
当保存文本文件时,客户端在每个货币符号前获得'Â'字符。
我尝试了以下操作,但仍然得到奇怪的字符
using (StreamWriter sr = new StreamWriter(path, false, System.Text.Encoding.UTF8))
{
sr.Write(text);
}
using (StreamWriter sr = File.CreateText(path))
{
sr.Write(text);
}
关于如何保存文件没有任何编码的任何建议?
关于如何保存文件没有任何编码的任何建议?
那个问题没有意义;"编码"是将字符串字符转换为字节以存储/传输(例如在磁盘上)的过程。任何文本内容都必须具有和编码。如果您已将其保存为UTF8,那么读取它的人也必须将其读取为 UTF8。可以尝试包含BOM:
... new StreamWriter(path, false, new UTF8Encoding(true))
或者,找出你的机器默认配置使用的编码/代码页,并使用它(它是Encoding.Default
);例如:
... new StreamWriter(path, false, Encoding.Default)
如果您的用户指出他们需要在代码页874(又名"Thai")中使用它,那么您将使用:
... new StreamWriter(path, false, Encoding.GetEncoding(874))
使用流作为输入的StreamWriter根据文档默认为UTF-8。
这个构造函数创建了一个没有字节顺序标记(BOM)的UTF-8编码的StreamWriter,所以它的GetPreamble方法返回一个空字节数组。
这取决于您计算机的本地设置。如果您想确保所有内容都按照您的预期保存,您应该自己指定编码。
见:http://msdn.microsoft.com/en-us/library/system.text.encoding.default.aspx