Estou tentando criar um arquivo de texto usando VB.Net com codificação UTF8, sem BOM. Alguém pode me ajudar, como fazer isso?
Posso escrever arquivos com codificação UTF8, mas como remover a marca de ordem de bytes dele?
edit1: Eu tentei um código como este;
Dim utf8 As New UTF8Encoding()
Dim utf8EmitBOM As New UTF8Encoding(True)
Dim strW As New StreamWriter("c:\temp\bom\1.html", True, utf8EmitBOM)
strW.Write(utf8EmitBOM.GetPreamble())
strW.WriteLine("hi there")
strW.Close()
Dim strw2 As New StreamWriter("c:\temp\bom\2.html", True, utf8)
strw2.Write(utf8.GetPreamble())
strw2.WriteLine("hi there")
strw2.Close()
1.html criado apenas com codificação UTF8 e 2.html criado com formato de codificação ANSI.
Abordagem simplificada - http://whatilearnttuday.blogspot.com/2011/10/write-text-files-without-byte-order.html