都用 utf8 编码,下面贴两端伪代码。
问 : 第一种情况肯定是用 utf8 编码方式写入了文件,那第二种是不是也是用 uft8 写入了文件?(因为我发现用第二种方式写后,用某些文本编辑器打开会出现乱码,而第一种方式却不会)谢谢!!
// 第一种
using(FileStream fs = new FileStream("path"))
{
using(StreamWriter sw = new StreamWriter(fs, Encoding.UTF8))
{
sw.WriterLine("要写入文件的字符串");
}
}// 第二种
using(FileStream fs = new FileStream("path"))
{
string s = "要写入文件的字符串";
Byte[] b = Encoding.UTF8.GetBytes(s);
fs.Write(b, 0, b.Length);
}
问 : 第一种情况肯定是用 utf8 编码方式写入了文件,那第二种是不是也是用 uft8 写入了文件?(因为我发现用第二种方式写后,用某些文本编辑器打开会出现乱码,而第一种方式却不会)谢谢!!
// 第一种
using(FileStream fs = new FileStream("path"))
{
using(StreamWriter sw = new StreamWriter(fs, Encoding.UTF8))
{
sw.WriterLine("要写入文件的字符串");
}
}// 第二种
using(FileStream fs = new FileStream("path"))
{
string s = "要写入文件的字符串";
Byte[] b = Encoding.UTF8.GetBytes(s);
fs.Write(b, 0, b.Length);
}
EF BB BF而直接用字节输出的, 没有 bom 头,
某些编辑器不能判断 bom 头, 就按照 OS 默认编码读取了, 就显示为乱码了.ue 没事.
这是查的什么版本的 msdn ??也许是这个问题,等明天看看,手头没 ide 。不过比较高级的像word 啥的应该自己会猜出来吧
第二种,往一个文件里写入一段utf8编码的数据