日期:2014-05-18  浏览次数:21011 次

保存文件的时候,怎么添加BOM
C# code

using (StreamWriter sw = new StreamWriter("abc.txt"))
{
         sw.Write(str); 
         sw.Close();
}




上面的代码,默认以UTF-8编码,来保存str。

但我发现,并没有带上BOM。

怎么加上UTF-8的BOM?

------解决方案--------------------
手动在头上加上ef bb bf这么三个字节?
------解决方案--------------------
C# code
using (Stream stream = File.Open("E:\\abc.txt", FileMode.Create))
using (StreamWriter sw = new StreamWriter(stream))
{
    stream.WriteByte(Convert.ToByte("EF", 16));
    stream.WriteByte(Convert.ToByte("BB", 16));
    stream.WriteByte(Convert.ToByte("BF", 16));
    sw.Write(str);
}