使用Stream CopyTo时跳过字节顺序标记(BOM)

use*_*670 3 c# byte-order-mark file

我试图将文件合并到一个输出文件中,我的个人文件上有BOM,我怎么能在使用Stream.CopyTo方法时摆脱它.

我的代码看起来像这样:

using (var output = File.Open(outputFile,FileMode.Append,FileAccess.Write))
      {
         foreach (var inputFile in inputFiles)
         {
           using (var input = File.OpenRead(inputFile))
           {
              input.CopyTo(output);
           }
         }
      }
Run Code Online (Sandbox Code Playgroud)

Baz*_*nga 7

使用以下方法..

using (var output = File.Open(outputFile,FileMode.Append,FileAccess.Write))
      {
         foreach (var inputFile in inputFiles)
         {
           using (var input = File.OpenRead(inputFile))
           {
               input.Position = Encoding.Unicode.GetPreamble().Length;  //The encoding might be any type.
              input.CopyTo(output);
           }
         }
      }
Run Code Online (Sandbox Code Playgroud)