Re: Hola Edgar

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Hola Edgar

Edgar J. De Cleene



El 9/2/08 3:23 PM, "Javier Reyes" <[hidden email]> escribió:

> Hola Edgar,
>
> ¿Que tal por Argentina? frio?  acá terminando el verano caluroso y volviendo
> al trabajo!  te escribo para pedirte ayuda con una duda de Squeak con la que
> espero que tu me  puedas  orientar. Mi aplicación crea unos diagramas usando
> morphs, fundamentalmente de texto. El usuario da entrada al texto y utiliza
> caracteres en castellano, incluyendo las 'ñ' y vocales acentuadas 'áéíóú'.
> Cuando yo grabo esos morphs a disco y los recupero todo funciona
> perfectamente; los caracteres en cuestión siguen en su sitio, pero sin
> embargo, cuando creo por mi cuenta un fichero de texto con su contenido, los
> caracteres especiales desaparecen siendo sustituidos por un montón de
> burruños. Yo trabajo en una mac con mac osX y con squeak 3.9. Mi aplicación
> lanza textedit para mostrar y editar esos textos, que tienen que ser
> compartidos como un fichero ascii txt con otros usuarios.
>
> Supongo que a estas alturas ya sabes de que problema te estoy hablando. El
> código que utilizo para escribir el fichero de texto sería más o menos este:
>
> 1 to: numMorphs do: [:x|
>     tmpMorph := self getMorph: x.
>     aFile nextPutAll: tmpMorph contents asString ; cr.
> ].
>
>
> Pues nada Edgar, espero que puedas arrojarme alguna luz ! Un saludo muy
> cordial y gracias por anticipado por tu atención.
>
> -Javier

El tema es sencillo.
El problema de haber pasado de un byte a dos y de aparecer los conversores
de texto origino montones de problemas y algunos aun no han sido resueltos.
Nunca olvides que Squeak sigue creyendo que está funcionando en las mac de
apple en el año 96.
Así que si vos grabas a disco , tenes que usar conversores de acuerdo a lo
que intentes leer a posteriori.
Por ejempplo, siempre hay que usar CrLfFileStream para grabar y recuperar,
ya que esta clase es la que tiene en cuenta las convenciones de fin de linea
distinta en Mac, Windows y Linux
Y si queres asegurar la lectura , fijate de usar UTF8TextConverter en la
entrada y la salida.

Lo reenvio a la lista de SqueakRos, ya que alguno puede tener este problema
o algo similar y alguno podra aportar algo mas.

Edgar


Reply | Threaded
Open this post in threaded view
|

Re: Hola Edgar

Edgar J. De Cleene



El 9/5/08 9:09 AM, "Javier Reyes" <[hidden email]> escribió:

> Edgar,
>
> He intentado seguir tu consejo en lo referente a los caracteres especiales,
> pero evidentemente estoy haciendo algo mal. He creado un text morph evaluando:
>
> tm := TextMorph new openInHand.
>
> En el morph resultante he escrito texto con caracteres acentuados y eñes. A
> continuación he evaluado este código:
>
> textConv := UTF8TextConverter new.
> aFile:= CrLfFileStream forceNewFileNamed: './prueba.txt'.
>
> (tm contents) do: [:c|
>     Transcript show: c.
>     textConv nextPut: c toStream: aFile.
>     ].
> aFile close.
>
> Si bien en el Transcript el contenido del morph aparece con acentos y eñes, al
> abrir el fichero 'prueba.txt' los caracteres especiales aparecen desdoblados.
>
> ¿Que estoy haciendo mal?
>
> Un saludo,
Creo que nada...
No hace falta caracter por caracter, podes poner todo.
Que sistema operativo ?
En que abris el archivo , en Squeak o en editor externo ?
Que se ve al poner el file list sobre tu archivo y los diferentes
conversores ?
Te agradecería mandes a la lista
http://ar.groups.yahoo.com/group/squeakRos/ (Group)

Que para algo existe, a otro le puede pasar lo mismo, otro amigo de la lista
te podrá ayudar

Edgar