Problema acentos y eñes


#1

Hola a todos,

Por motivos que no vienen al caso, una aplicación que tengo ha de
crear directorios en una unidad Samba (Z:/).
En un formulario, le pido al usuario el nombre de la carpeta y tras
ello creo el directorio en Z:

Si creo la carpeta con los datos tal me los da el usuario (“sin
limpiar”) no tengo problema, me la crea perfectamente, tenga acentos o
eñes o lo que sea con FileUtils.mkdir(path)
El problema viene en cuando intento, por ejemplo, pasarla a mayúsculas
con un .upcase. Desde ese mismo momento los acentos no me los trata
bien, ni las eñes.

Supongo que es un problema por sistemas de codificación, pero a priori
no sé como solucionarlo… La verdad es que no quiero hacer una
función quita_acentos con 12 gsubs (5 vocales minúscula + 5 vocales
mayúscula + ñ + Ñ)… tiene que existir una forma más elegante de
resolver el problema.

Gracias por adelantado!

Un saludo!


#2

Si tu aplicación es Rails, puedes tratar la cadena como unicode
utilizando
el método chars primero, con lo que path.chars.upcase te debería de
funcionar.

HTH
Juanjo

2008/11/3 Juan José Vidal Agustín removed_email_address@domain.invalid


#3

Ahora ya no es chars, lo han cambiado a mb_chars.

2008/11/3 Juanjo Bazán removed_email_address@domain.invalid


#4

2008/11/3 Juan José Vidal Agustín removed_email_address@domain.invalid

Pero me funciona chars y no mb_chars

Sí, es que chars fue marcado deprecated después de que saliera la 2.1,
mb_chars sólo está en edge de momento hasta que haya 2.2 definitiva


#5

Solucionado:

Pero me funciona chars y no mb_chars
Después de poner esto aún no me funcionaba. El problema era que la
unidad Samba no estaba bien montada, le faltaba en las opciones
iocharset=utf8

Gracias a todos.
Un saludo!

El 03/11/2008, a las 10:43, Nacho Sánchez escribió: