In order to omit the byte order mark (BOM), your stream must use a custom instance of UTF8Encoding instead of the default System.Text.Encoding.UTF8:
1.Call the UTF8Encoding constructor with False for the encoderShouldEmitUTF8Identifier parameter.
2.Pass the UTF8Encoding instance to the stream constructor.
實例:
utf8WithoutBom = System.Text.UTF8Encoding( ( sink = StreamWriter(,
Note that omitting the BOM is only permissible for UTF-8, not for UTF-16.