BinaryWriter将脏字符放在AppendMode的开头写入中

时间:2012-10-08 12:38:11

标签: c# .net file-io binarywriter

  

可能重复:
  Why does BinaryWriter prepend gibberish to the start of a stream? How do you avoid it?

在执行NTService期间会出现问题,该NTService会在文件上写入许多报告。这是我使用的简单代码:

 FileStream fsw = new FileStream(fileName, FileMode.Append, FileAccess.Write, FileShare.Write);
            BinaryWriter w = new BinaryWriter(fsw);
            w.Write(report);
            w.Flush();
            fsw.Flush();
            w.Close();
            fsw.Close();

输出在文件中正确刷新,但在每次写入开始时会出现两个奇怪的字符(�)。我在几台机器上部署服务,问题仍然存在。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

试试这个:

    BinaryWriter w = new BinaryWriter(fsw);

    w.Write(UTF8Encoding.Default.GetBytes(report));