Convertir arrays de bytes a cadena. (que pasa con la "ñ")

27/07/2004 - 16:45 por Javier Ros | Informe spam
Hola,

Como digo mi objetivo convertir un byte[] en un string, el metodo que uso
es:

ASCIIEncoding enc = new ASCIIEncoding();
byte []Result = GetCurrentRecordData();
if (Result == null)
return "";
else
return enc.GetString(Result);

Siempre me habia ido bien, pero al leer de un fichero de texto que contenia
varias letras "ñ" detecté el fallo.
Tambien he probado con UTF8Encoding y me pasa algo similar.

¿Como debo de hacerlo para convertir de byte[] a string y que me respete
la "ñ"?

Gracias.

Preguntas similare

Leer las respuestas

#1 pablo crosio
27/07/2004 - 22:51 | Informe spam
hola!

el tema es que la ñ no esta definida en el juego de
caracteres ASCII standard

deberias trabajar con el codigo de pagina especifico con
el que hayas guardado tu archivo

podes probar con el tradicional 1252 a ver si funciona


Encoding enc = new Encoding("windows-1252");
byte[] Result = GetCurrentRecordData();
if(Result == null)
return "";
else
return enc.GetString(Result);

salu2!!

pablo
Hola,

Como digo mi objetivo convertir un byte[] en un string,


el metodo que uso
es:

ASCIIEncoding enc = new ASCIIEncoding();
byte []Result = GetCurrentRecordData();
if (Result == null)
return "";
else
return enc.GetString(Result);

Siempre me habia ido bien, pero al leer de un fichero de


texto que contenia
varias letras "ñ" detecté el fallo.
Tambien he probado con UTF8Encoding y me pasa algo


similar.

¿Como debo de hacerlo para convertir de byte[] a string


y que me respete
la "ñ"?

Gracias.


.

Respuesta Responder a este mensaje
#2 Javier Ros
28/07/2004 - 14:26 | Informe spam
Gracias Pablo,

El código que pusiste no funciona, Encoding es una clase abstracta y
no se puede instanciar, se soluciona de la siguiene manera:

Encoding enc = Encoding.GetEncoding("windows-1252");
byte[] Result = GetCurrentRecordData();
if(Result == null)
return "";
else
return enc.GetString(Result);

Saludos y gracias de nuevo.

-

"pablo crosio" escribió en el mensaje
news:542b01c4741b$77f524f0$

hola!

el tema es que la ñ no esta definida en el juego de
caracteres ASCII standard

deberias trabajar con el codigo de pagina especifico con
el que hayas guardado tu archivo

podes probar con el tradicional 1252 a ver si funciona


Encoding enc = new Encoding("windows-1252");
byte[] Result = GetCurrentRecordData();
if(Result == null)
return "";
else
return enc.GetString(Result);

salu2!!

pablo
Hola,

Como digo mi objetivo convertir un byte[] en un string,


el metodo que uso
es:

ASCIIEncoding enc = new ASCIIEncoding();
byte []Result = GetCurrentRecordData();
if (Result == null)
return "";
else
return enc.GetString(Result);

Siempre me habia ido bien, pero al leer de un fichero de


texto que contenia
varias letras "ñ" detecté el fallo.
Tambien he probado con UTF8Encoding y me pasa algo


similar.

¿Como debo de hacerlo para convertir de byte[] a string


y que me respete
la "ñ"?

Gracias.


.

Respuesta Responder a este mensaje
#3 pablo crosio
28/07/2004 - 15:39 | Informe spam
hola!

perdon javier, tenes toda la razon, fue una adaptacion de
la tuya y puse mal el codigo

me alegro de que te haya servido

salu2!!

pablo

Gracias Pablo,

El código que pusiste no funciona, Encoding es una clase


abstracta y
no se puede instanciar, se soluciona de la siguiene


manera:

Encoding enc = Encoding.GetEncoding("windows-1252");
byte[] Result = GetCurrentRecordData();
if(Result == null)
return "";
else
return enc.GetString(Result);

Saludos y gracias de nuevo.

-


"pablo crosio" escribió en el


mensaje
news:542b01c4741b$77f524f0$

hola!

el tema es que la ñ no esta definida en el juego de
caracteres ASCII standard

deberias trabajar con el codigo de pagina especifico con
el que hayas guardado tu archivo

podes probar con el tradicional 1252 a ver si funciona


Encoding enc = new Encoding("windows-1252");
byte[] Result = GetCurrentRecordData();
if(Result == null)
return "";
else
return enc.GetString(Result);

salu2!!

pablo
Hola,

Como digo mi objetivo convertir un byte[] en un string,


el metodo que uso
es:

ASCIIEncoding enc = new ASCIIEncoding();
byte []Result = GetCurrentRecordData();
if (Result == null)
return "";
else
return enc.GetString(Result);

Siempre me habia ido bien, pero al leer de un fichero de


texto que contenia
varias letras "ñ" detecté el fallo.
Tambien he probado con UTF8Encoding y me pasa algo


similar.

¿Como debo de hacerlo para convertir de byte[] a string


y que me respete
la "ñ"?

Gracias.


.





.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida