Exportar CSV problemas utf8

Buenas a todos,

Estoy exportando unos datos a CSV. Como tengo todo configurado a utf8
me exporta también los datos a utf8.

Mientras que openoffice me lo abre perfectamente, tanto en linux como
en windows, porque detecta el encoding (y sinó lo elijo en la ventana
para elegir el separador que sale cada vez que abres un .csv) el Excel
me lo abre (supongo) en su encoding nativo de windows. Para que ésto
último no pase, quería decodificar el texto que tengo en utf8 (como el
utf8_decode de php que pasa de utf8 a iso).

He estado buscando para ruby algo parecido (pack, REXML::Encoding…),
mirando por el archivo de la lista a ver si alguien más lo
habíapreguntado, google, más google… :slight_smile: y nada, no he encontrado
solución.
¿Alguien sabe cómo hacerlo?

Saludos!

Quizas iconv te sirva, te dejo un enlace [1] que me fue util para
usarla.

[1]

saludos,
Juan P.

El 2/03/07, Jonathan Hernández [email protected]
escribió:> utf8_decode de php que pasa de utf8 a iso).

He estado buscando para ruby algo parecido (pack, REXML::Encoding…),
mirando por el archivo de la lista a ver si alguien más lo había
preguntado, google, más google… :slight_smile: y nada, no he encontrado
solución.

¿Alguien sabe cómo hacerlo?

Me respondo a mi mismo:

Iconv.iconv(“ISO-8859-1”,“UTF-8”,string)

PD: Lo he visto en la lista inglesa… bueno, almenos ahora
tambiénesta en esta :smiley:
PD2: Acabo de ver que Juan P. me apunta a una
explicación másextensa de la librería iconv de ruby. Muchas gracias!

Jonathan Hernández Velasco aka jBilbo

Vpte. GPLtarragona ;; http://www.gpltarragona.org

último no pase, quería decodificar el texto que tengo en utf8 (como el
utf8_decode de php que pasa de utf8 a iso).

He estado buscando para ruby algo parecido (pack, REXML::Encoding…),

mira la librería Iconv (es de la librería estándar de ruby)

saludos

javier ramirez

Estamos de estreno… si necesitas llevar el control de tus gastos
visita http://www.gastosgem.com !!Es gratis!!

On Mar 2, 2007, at 3:28 PM, Jonathan Hernández wrote:

Iconv.iconv(“ISO-8859-1”,“UTF-8”,string)

Un par de detalles.

El metodo de Iconv que devuelve una cadena es Iconv.conv:

Iconv.conv(“ISO-8859-1”, “UTF-8”, string)

en el pickaxe explican Iconv.iconv, que devuelve un Array.

Por otro lado eso peta si string tiene algun caracter no
representable en latin1:

Iconv.conv(“iso-8859-1”, “utf-8”, “ä Ï€ ë”)

-> Iconv::IllegalSequence

pero se puede indicar que de haberlos los obvie con “//IGNORE”:

Iconv.conv(“iso-8859-1//IGNORE”, “utf-8”, “ä Ï€ ë”)

-> “ä ë”

– fxn

El vie, 02-03-2007 a las 20:07 +0100, Xavier N. escribió:

Por otro lado eso peta si string tiene algun caracter no
representable en latin1:

Iconv.conv(“iso-8859-1”, “utf-8”, “ä Ï€ ë”)

→ Iconv::IllegalSequence

pero se puede indicar que de haberlos los obvie con “//IGNORE”:

Iconv.conv(“iso-8859-1//IGNORE”, “utf-8”, “ä Ï€ ë”)

→ “ä ë”

No sabía lo del IGNORE, gran apunte! Gracias :slight_smile:

Saludos,

Jonathan Hernández Velasco aka jBilbo

Vpte. GPLtarragona ;; http://www.gpltarragona.org
GnuPG key ID: 348EAC17 ;; pgp.mit.edu