FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Averiguar codificacion de una cadena
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM
Averiguar codificacion de una cadena
Posted: Sun Apr 02, 2023 10:17 AM

Buenas

En una DBF tengo un campo (Poblaci贸n) que unos registros estan con codificacion ansi y otros con codificaci贸n DOS

los que est谩n en codificacion ansi me muestran la "脩" correctamente

los que est谩n en codificacion dos me muestran la "脩" as铆 "楼"

Si en la impresi贸n hago un oemtoansi, la que tiene codificac贸n DOS se muestra correctamente, pero la que tiene codificaci贸n ansi se muestra mal.

he intentado con strtran(poblacion,"楼","脩"), y no me hace nada

he intentado con ? AT("楼",poblacion), y no me localiza 茅ste s铆mbolo.

Habr铆a alguna forma de saber la codificaci贸n de 茅ste campo para hacer el oemtoansi s贸lo cuando sea necesario?

--------------------------

Saludos



Jose Luis
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Averiguar codificacion de una cadena
Posted: Sun Apr 02, 2023 11:19 AM
Estimado Jose Luis,

Preg煤ntale a chatGPT. A mi me resolvi贸 ayer el quitar caracteres de escape ansi de un texto :-)

No siempre acierta a la primera, pero te da pistas. Regenera la respuesta varias veces
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM
Re: Averiguar codificacion de una cadena
Posted: Sun Apr 02, 2023 12:25 PM
Antonio

No hab铆a utilizado nunca esta historia.
Me he registrado, he puesto la pregunta y me ha contestado:
Code (fw): Select all Collapse
 聽 聽#include "CpGfunc.ch"

// Supongamos que tenemos una DBF llamada "datos.dbf" y un campo llamado "Poblaci贸n"
use datos
set codepage to spanish

// Recorremos los registros de la DBF
go top
do while !eof()
聽 // Obtenemos el valor del campo "Poblaci贸n" del registro actual
聽 poblacion = datos->Poblaci贸n

聽 // Adivinamos la codificaci贸n del campo "Poblaci贸n"
聽 cpg = CpgGuess(poblacion)

聽 // Imprimimos la codificaci贸n adivinada
聽 ? "La codificaci贸n de Poblaci贸n en este registro es:", cpg

聽 // Si la codificaci贸n es diferente a la que estamos usando actualmente, hacemos la conversi贸n
聽 if cpg <> "ANSI" and codepage() <> cpg
聽 聽 oemtoansi(poblacion)
聽 endif

聽 // Imprimimos el valor del campo "Poblaci贸n" ya sea que se haya hecho la conversi贸n o no
聽 ? poblacion

聽 // Pasamos al siguiente registro
聽 skip
enddo
Ahora a averiguar donde consegu铆r ese incluye y esa librer铆a
--------------------------

Saludos



Jose Luis
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Averiguar codificacion de una cadena
Posted: Sun Apr 02, 2023 01:01 PM

Hazle la misma pregunta varias veces. No te fies de lo que dice siempre porque se inventa muchas cosas

Enviado desde mi SM-M325FV mediante Tapatalk

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 318
Joined: Fri Jan 14, 2022 08:37 AM
Re: Averiguar codificacion de una cadena
Posted: Sun Apr 02, 2023 07:48 PM
Antonio Linares wrote:Hazle la misma pregunta varias veces. No te fies de lo que dice siempre porque se inventa muchas cosas

Enviado desde mi SM-M325FV mediante Tapatalk

ChatGPT es como una patata reci茅n arrancada: Tienes que retirar toda la tierra para poder ver el tub茅rculo
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Averiguar codificacion de una cadena
Posted: Sun Apr 02, 2023 08:04 PM
Ir谩 mejorando m谩s y m谩s :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion