using (FileStream fs = File.Create(@"c:\222.txt"))
{
using (BinaryWriter bw = new BinaryWriter(fs, Encoding.Unicode))
{
bw.Write('文');
}
}
//结果:87 65using (FileStream fs = File.Create(@"c:\111.txt"))
{
using (StreamWriter sw = new StreamWriter(fs, Encoding.Unicode))
{
sw.Write('文');
}
}
//结果:FF FE 87 652.BinaryWriter可以直接写入2字节有符号整数,StreamWriter不支持
using (FileStream fs = File.Create(@"c:\333.txt"))
{
using (BinaryWriter bw = new BinaryWriter(fs, Encoding.Unicode))
{
bw.Write((short)'文');
}
}
//结果:87 653.BinaryWriter不支持设置字节顺序,StreamWriter 支持设置字节顺序
using (FileStream fs = File.Create(@"c:\444.txt"))
{
using (BinaryWriter bw = new BinaryWriter(fs, new UnicodeEncoding(true, true)))
{
bw.Write((short)'文');
}
}
//结果:87 65using (FileStream fs = File.Create(@"c:\555.txt"))
{
using (StreamWriter sw = new StreamWriter(fs, new UnicodeEncoding(true, true)))
{
sw.Write('文');
}
}
//结果:FE FF 65 87从测试结果可知BinaryWriter都是按little-endian字节顺序写入的,并且不提供字节顺序标记(BOM);StreamWriter可设置写入的字节顺序,以及是否提供字节顺序标记。
评论(0)
暂无评论。