Avatar ·

Como converter um array de bytes UTF-8 em uma string em C#?

Olá a todos! Sou um desenvolvedor C# iniciante e me deparei com um problema. Eu recebo um array de bytes de um fluxo de rede (socket TCP), que representa um texto codificado em UTF-8. Preciso converter esse `byte[]` de volta para uma string comum `string`, para exibi-la no console ou processá-la. O problema é que não entendo como fazer isso corretamente. A conversão direta com `(string)buffer` não funciona, o compilador reclama. Tentei usar `Encoding.Default.GetString(buffer)`, mas no final obtenho caracteres ilegíveis em vez do texto em russo. Aqui está um exemplo de código que tenho: ```csharp byte[] utf8Bytes = new byte[] { 208, 161, 208, 176, 208, 189, 208, 186, 209, 130 }; // Isso é "Санкт" em UTF-8 string result = Encoding.Default.GetString(utf8Bytes); Console.WriteLine(result); // Exibe ```