Problemas con memowrit

Problemas con memowrit

Postby vzorrilla » Tue Sep 23, 2014 10:42 pm

Amigos

TXT="Provincia de ÑaÑa"

Usando MEMOWRIT("C:\INFO.TXT",TXT)
me percato que la Ñ la pone como Ð
saben como evitar eso

Gracias

Saludos

Vladimir Zorrilla LLerena
vzorrilla
 
Posts: 5
Joined: Thu Aug 07, 2014 7:43 pm

Re: Problemas con memowrit

Postby Willi Quintana » Wed Sep 24, 2014 2:11 am

HI sr.
? STRTRAN(MEMOREAD("C:\INFO.TXT"),"Ð","Ñ")

Salu2
User avatar
Willi Quintana
 
Posts: 1003
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú

Re: Problemas con memowrit

Postby vzorrilla » Wed Sep 24, 2014 4:09 am

Gracias por contestar

Lo que estoy generando es un archivo xml con memowrit

El archivo generado lo van a subir a una pagina web de manera que yo no lo puedo cambiar desde fivewin por que
mi programa no va a leer ese archivo.

Saludos

Vladimir Zorrilla LLerena
vzorrilla
 
Posts: 5
Joined: Thu Aug 07, 2014 7:43 pm

Re: Problemas con memowrit

Postby Carlos Mora » Wed Sep 24, 2014 7:17 am

Hola Vladimir,

si es XML, y en web, con una probabilidad muy alta estás usando utf-8, y es por eso el problema.
Un fichero XML comienza con la declaración que incluye el encoding que lleva:
Code: Select all  Expand view

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 


Harbour tiene funciones para escribir utf-8 HB_StrToUTF8() y la contrapartida HB_UTF8ToStr(), es decir que al escribir tienes que usar la primera y al leer la segunda para volver al encoding de Windows.
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Carlos Mora
 
Posts: 988
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Re: Problemas con memowrit

Postby vzorrilla » Wed Sep 24, 2014 6:47 pm

Gracias por la aclaracion Carlos la verdad busco solo que la Ñ se grabe como Ñ en un archivo de texto.
fwrite y memowrit no lo hacen .


La pregunta es si hay alguna clase o funcion que grabe la Ñ como Ñ en xharbour o harbour

Y que al abrirlo con el bloc de notas vea la Ñ como Ñ

Alguien sabe como lograr esto

Gracias por las respuestas
vzorrilla
 
Posts: 5
Joined: Thu Aug 07, 2014 7:43 pm

Re: Problemas con memowrit

Postby Antonio Linares » Thu Sep 25, 2014 10:48 am

Vladimir,

Este código funciona bien aqui:

MemoWrit( "test.txt", "caña" )
Msginfo( MemoRead( "test.txt" ) )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41397
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Problemas con memowrit

Postby Carlos Mora » Thu Sep 25, 2014 4:27 pm

Vladimir,
vzorrilla wrote:La pregunta es si hay alguna clase o funcion que grabe la Ñ como Ñ en xharbour o harbour
Y que al abrirlo con el bloc de notas vea la Ñ como Ñ
Alguien sabe como lograr esto

Es que el Block de Notas no es un programa adecuado para mirar xml, porque no soporta la codificación utf-8 que es de uso común.

No se cual es tu edad, pero si eres 'de los míos', 'de mi quinta', habrás usado hasta el hartazgo OEM2Ansi y Ansi2OEM. Bueno, la situación es idéntica al problema MS-DOS/WIN, solo que ahora es Win/Web+XML. Ahora el encoding que usa Windows (WINANSI o algo así) es diferente del utf-8. Si lo escribes en WinANSI es casi con seguridad que las aplicaciones que procesan el xml se quejen de ese caracter.

Te reitero que la solución es transformar a utf-8 antes de escribir, y transformar a ansi al leer.

Code: Select all  Expand view

cVar:= 'Piraña'
__MemoWrit( 'test.txt', HB_StrToUTF8( cVar ) )

MsgInfo( HB_UTF8ToStr( MemoRead( 'test.txt' ) ) )
 

Debería mostrar la Ñ correctamente.

Otra alternativa, que no se si es aceptable, es que indiques el encoding correcto en el xml y esperar que la otra aplicacion acepte cosas que tengan otro encoding.

Code: Select all  Expand view

<?xml version="1.0" encoding="iso-8859-15" standalone="no"?>
 


Con eso no tendrías que usar la transformación a utf8, y el notepad debería mostrarlo bien, hay que ver si la aplicacion externa lo acepta.

Cuenta como te fue.
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Carlos Mora
 
Posts: 988
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Re: Problemas con memowrit

Postby hmpaquito » Thu Sep 25, 2014 4:54 pm

Carlos,

Magnifique ! que diría Hercule Poirot.

Muy bien explicado y sobre todo solucionado.

Gracias por el aporte.

Saludos
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 34 guests