Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-04-2020
elrayo76 elrayo76 is offline
Miembro
 
Registrado: ene 2004
Ubicación: En la tierra, por eso mis archivos en la tierra y no en la nuebe...
Posts: 290
Poder: 21
elrayo76 Va por buen camino
Sobre JSON. ¿Qué usar?

Buenas,


Les quería consultar a los que tienen experiencia con JSON que clases usan en sus aplicaciones para el tratamiento de estos archivos.


Se que si usan Delphi 7 tienen que usar alguna librería de terceros, pero en las últimas versiones Delphi XE8 (que es la que utilizo) y posteriores ya existen units que manejan esto en el lenguaje.


Lo que no se es que tan recomendable es utilizar lo que ya tiene el lenguaje en lugar de unas de terceros. He leído en otros post que son del año pasado si mal no recuerdo que recomiendan utilizar SuperObject como librerías, pero el tema es que las mismas las he visto en GitHub y no se actualizan hace varios años. Si fuera el caso que voy por estas no tendría problemas en tomarlas y ver de actualizarlas o hacer una bifurcación.


Espero sus comentarios y muchas gracias.


Saludos,
El Rayo
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno
Responder Con Cita
  #2  
Antiguo 24-04-2020
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.467
Poder: 21
newtron Va camino a la fama
Buenas.


Yo he tenido recientemente que buscar algo para "descifrar" mensajes JSON y di con esto. No sé exactamente si es lo que buscas pero es una unidad que maneja este tipo de mensajes sin demasiada dificultad.


Saludos
__________________
Be water my friend.
Responder Con Cita
  #3  
Antiguo 24-04-2020
elrayo76 elrayo76 is offline
Miembro
 
Registrado: ene 2004
Ubicación: En la tierra, por eso mis archivos en la tierra y no en la nuebe...
Posts: 290
Poder: 21
elrayo76 Va por buen camino
Buenas Newtron,


Gracias, creo que ese que comentas lo había visto hace muchisimo solo de pasada pero nunca me lo guarde por si lo necesitaba. Podría servirme.


Lo que necesito es poder serializar y deserializar archivos JSON, nada mas que eso. Lo único que quiero es que no tenga problemas con estructuras complejas.


Por si a alguién le interesa encontré este sitio que se le carga todo el contenido del JSON y genera toda las unit con las clases necesarias para Delphi. Acá dejo la dirección: https://jsontodelphi.com/


Mi pregunta es la siguiente, estás clases tanto la que me pasaste como la que yo comente no se actualizan hace mucho una 2009 y otra 2013. Más allá de actualización por compatibilidad con RADs nuevos que pueda necesitar o por performance, ¿hay algo que diga que se tienen que actulizar por que se actualizó el estandar JSON?.



Saludos,
El Rayo
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno
Responder Con Cita
  #4  
Antiguo 24-04-2020
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
El indicado por newtron funciona muy bien, lkjson.

El problema de esas clases que se crean desde sitios online como el que has indicado, es que no son compatibles con delphi 7, que es el que usas, sin con delphis modernos.
Responder Con Cita
  #5  
Antiguo 25-04-2020
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.467
Poder: 21
newtron Va camino a la fama
Cita:
Empezado por elrayo76 Ver Mensaje
Buenas Newtron,


Gracias, creo que ese que comentas lo había visto hace muchisimo solo de pasada pero nunca me lo guarde por si lo necesitaba. Podría servirme.


Lo que necesito es poder serializar y deserializar archivos JSON, nada mas que eso. Lo único que quiero es que no tenga problemas con estructuras complejas.


Por si a alguién le interesa encontré este sitio que se le carga todo el contenido del JSON y genera toda las unit con las clases necesarias para Delphi. Acá dejo la dirección: https://jsontodelphi.com/


Mi pregunta es la siguiente, estás clases tanto la que me pasaste como la que yo comente no se actualizan hace mucho una 2009 y otra 2013. Más allá de actualización por compatibilidad con RADs nuevos que pueda necesitar o por performance, ¿hay algo que diga que se tienen que actulizar por que se actualizó el estandar JSON?.



Saludos,
El Rayo

Yo lo he implementado hace escasamente un mes en un Delphi2007 sin problemas pero te diría que debe de funcionar bien en cualquier delphi.


Saludos
__________________
Be water my friend.
Responder Con Cita
  #6  
Antiguo 25-04-2020
xalo xalo is offline
Miembro
 
Registrado: ene 2011
Posts: 18
Poder: 0
xalo Va por buen camino
Yo te recomendaría mORMot. Esta es la parte donde explica el tema de tratamiento de json
Tiene un performance mejor incluso que el que viene integrado en Delphi. Sinó quieres usar o instalar todo el framework usa solo la unidad Syncommons.pas. Compila desde delphi 7 a 10.3 e incluso FPC.
La documentación es excelente.
Fíjate que fácil es crear un json y parsearlo con una de las diversas formas que tiene de hacerlo:
Código:
var V1: variant; 
begin
  V1 := _Obj(['name','John','year',1972]);
  
  assert(VariantSaveJson(v1)='{"name":"John","year":1972}');
  assert(v1.name='John');
....
Responder Con Cita
  #7  
Antiguo 27-04-2020
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Yo mismo he usado lkJson bastante en versiones antiguas de delphi que no tenían soporte para JSON y funcionan muy boien.
Y también he visto algo de SuperObject, aunque no tanto y yambién va muy bien.

Pero creo que la mejor opción la has dicho tú mismo:


Cita:
Empezado por elrayo76 Ver Mensaje
Lo que no se es que tan recomendable es utilizar lo que ya tiene el lenguaje en lugar de unas de terceros.

Si tu versión de delphi lo soporta, yo personalmente no usuaría algo de terceros.
Salvo que hubiera alguna razón de peso (si la hay comentala).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #8  
Antiguo 27-04-2020
WHILENOTEOF WHILENOTEOF is offline
Miembro
 
Registrado: mar 2008
Posts: 229
Poder: 17
WHILENOTEOF Va camino a la fama
Yo utilizo estos https://github.com/ahausladen/JsonDataObjects , van muy bien, rápido y una elegante forma de acceder a los valores. Sobre la implementación que viene con Delphi, creo que en las últimas versiones ha mejorado el rendimiento, pero como suele pasarle a Embarcadero lo primero que sacó faltaba mucho por pulir.
Responder Con Cita
  #9  
Antiguo 27-04-2020
oscorm oscorm is offline
Miembro
 
Registrado: ago 2004
Ubicación: Alcorcón
Posts: 59
Poder: 20
oscorm Va por buen camino
Yo uso https://www.winsoft.sk/json.htm y va de p.m. incluso con Delphi 6, 0 problemas y una excelente implementación.
Responder Con Cita
  #10  
Antiguo 27-04-2020
WHILENOTEOF WHILENOTEOF is offline
Miembro
 
Registrado: mar 2008
Posts: 229
Poder: 17
WHILENOTEOF Va camino a la fama
Cita:
Empezado por oscorm Ver Mensaje
Yo uso https://www.winsoft.sk/json.htm y va de p.m. incluso con Delphi 6, 0 problemas y una excelente implementación.
No los he probado, pero siendo de pago y viendo como implementan la asignación de los diferentes valores (en el ejemplo de la web), me quedo con https://github.com/ahausladen/JsonDataObjects .
Responder Con Cita
  #11  
Antiguo 27-04-2020
elrayo76 elrayo76 is offline
Miembro
 
Registrado: ene 2004
Ubicación: En la tierra, por eso mis archivos en la tierra y no en la nuebe...
Posts: 290
Poder: 21
elrayo76 Va por buen camino
Buenas,
Gracias a todos por sus recomendaciones. Ire viendo cada uno y dediciré con cual me quedo.
Al parecer no recomiendan usar lo que viene con el lenguaje.

Saludos,
El Rayo
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno

Última edición por Neftali [Germán.Estévez] fecha: 27-04-2020 a las 17:03:37.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Dudas sobre como usar SQLite en Firemonkey aquiestamos SQL 3 23-02-2012 02:26:40
Error Raro al Usar IBX's sobre Firebird 2.0 AGAG4 Firebird e Interbase 17 01-10-2008 20:29:39
Sugerencia sobre que BD usar robertosc Varios 2 12-09-2008 13:59:51
consejo sobre que delphi usar?? UREÑA Varios 1 23-10-2007 19:13:57
duda sobre qué DB usar mak8888 Firebird e Interbase 5 20-06-2005 21:22:13


La franja horaria es GMT +2. Ahora son las 19:33:46.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi