Pergunta

Estou escrevendo um serviço que lerá um arquivo de um diretório, leia o conteúdo do arquivo e processará o conteúdo.

Estou tendo problemas com caracteres suecos que são lidos no arquivo, pois estão sendo traduzidos para "Carrejas" pelo serviço quando são lidos.

Alguém sabe qual página de código padrão/configuração de cultura é a Beeing usada pelo Service Control Manager ou talvez você saiba de algum artigo sobre "Melhores Práticas" para lidar com caracteres suecos no contexto da programação do Windows Service?

Qualquer ajuda é apreciada.

Foi útil?

Solução

Provavelmente tem algo a ver com a maneira como você lê o arquivo e como o arquivo é codificado. Por exemplo, se o arquivo for codificado com o UTF-8 e sua leitura com ASCII, os caracteres especiais serão lixo.

Por exemplo:

using (var fileStream = new StreamReader(@"path to file", Encoding.UTF8))
{
    Console.Write(fileStream.ReadToEnd());
}

Você pode mudar Encoding.UTF8 Para corresponder à codificação usada para criar o arquivo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top