System.IO.StreamWrite e Personagens espanhóis

votos
0

Eu preciso escrever o seguinte string para um txt um arquivo:

SEGS, AUS1,1,0,0,712205,584,8659094,2, NUÑEZ FELIX ARTURO, 584

I quando eu uso:

using  (System.IO.StreamWriter sw = new System.IO.StreamWriter(@fileSobrantes, true)) {
       sw.WriteLine(SEGS,AUS1,1,0,0,712205,584,8659094,2,NUÑEZ   FELIX ARTURO,584);
}

Recebo esta no arquivo

SEGS, AUS1,1,0,0,712205,584,8659094,2, NUÃ'EZ FELIX ARTURO, 584

Eu tento com os parâmetros de codificação em ASCII, UNICODE e ALL UTF e não funciona.

System.IO.StreamWriter(@fileSobrantes, true,Encoding.UTF32 ))
Publicado 10/03/2009 em 15:52
fonte usuário
Em outras línguas...                            


1 respostas

votos
1

Você não pode facilmente (e precisa) representam o que você tem no arquivo sem dar um hexadecimal. O que você está tentando usar para ler o arquivo? Meu palpite é que se você tentar Encoding.Defaultque irá trabalhar para você, mas é difícil dizer com certeza, sem saber o que você está tentando usar a lê-lo.

A outra alternativa é que a sua fonte de string é incorreta. Se você realmente tem o como uma string literal em seu código-fonte, você tem certeza que você tem Visual Studio criado para interpretá-la corretamente?

Ver a minha página de depuração unicode para técnicas sugeridas.

EDIT: A propósito, por que você prefixar fileSobrantescom @? Para identificadores você só precisa fazer isso se eles são palavras-chave. Você pode estar ficando confuso com strings literais Verbatim - mas isso não é uma string literal, é um nome de variável.

Respondeu 10/03/2009 em 15:57
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more