[Madrid-pm] Problema con el encoding y mkdir

DervishD bugs en dervishd.net
Vie Nov 2 04:54:45 PDT 2007


    Hola :)))

Veréis, tengo un script que lee unas líneas de un fichero que está
codificado en utf8, las presenta y luego crea unos directórios cuyos
nombres están basados en esas líneas.

En el aspecto de la presentación en pantalla no tengo problemas, basta
con usar "open '<:utf8'..." y "use encoding qw(:locale)" y ya está todo
arreglado.

El problema lo tengo con los nombres de fichero. En un sistema utf8 como
diox manda, al crear los directórios no hay problema, ya que las
variables en las que están almacenados los nombres de fichero están
codificadas con la codificación interna de Perl, que resulta ser UTF8.
Ahora bien, si el locale en el que se ejecuta el script es "latin1", por
ejemplo, los directórios no se crean correctamente, porque sus nombres
contienen caractéres multibyte, y no monobyte.

Creo que la solución pasa por usar "use Encode" y la función "encode"
o similar, pero tengo un problema: no sé el encoding del sistema. Quiero
decir que no sé qué "encoding" pasarle a "encode". En C lo haría usando
"langinfo", así que supongo que en Perl lo suyo es usar
"I18N::Langinfo". ¿Es esto correcto o hay una forma mucho más fácil?

Muchas gracias por adelantado.

    Raúl Núñez de Arenas Coronado

-- 
Linux Registered User 88736 | http://www.dervishd.net
It's my PC and I'll cry if I want to... RAmen!
We are waiting for 13 Feb 2009 23:31:30 +0000 ...


Más información sobre la lista de distribución Madrid-pm