|
|
|
|
|
- Importar archivos en formato JSON
- Leer y asignar un valor a una variable de tipo JSON
- Propiedades específicas de las variables de tipo JSON
- Recorrer los elementos de una variable de tipo JSON
El tipo JSON simplifica la manipulación de datos en formato JSON. jedi is JSON = [
{
"id": 5,
"name": "Luke Skywalker",
"pilotingScore": 98,
"shootingScore": 56,
"isForceUser": true
}
]
Sintaxis
Declarar y asignar un valor a una variable de tipo JSON Ocultar los detalles
<Variable name> is JSON = <Value>
OR <Variable name> is JSON <Variable name> = <Value>
<Variable name>: Nombre de la variable a declarar. <Value>: Valor a asignar a la variable. Los siguientes valores se pueden asignar a una variable de tipo JSON:- NULL,
- un booleano (True o False),
- un numérico,
- una fecha (convertida automáticamente en cadena RFC),
- una cadena Ansi o Unicode con datos,
- una cadena Ansi con datos en formato JSON.
Propiedades Importar archivos en formato JSON Las variables JSON se pueden declarar especificando un documento de ejemplo (un archivo de texto). La estructura del documento será leída por WINDEV, WEBDEV y WINDEV Mobile. Así, el autocompletado estará disponible para los nombres de los nodos en el editor de código. Para declarar una variable JSON con un documento de ejemplo: - Agregue el documento de texto al proyecto con uno de los siguientes métodos:
- en la pestaña "Proyecto", en el grupo "Proyecto", despliegue "
Lista de elementos" y haga clic en "Lista de elementos del proyecto". La lista de elementos del proyecto se abre. Haga clic en "Agregar" y seleccione el documento de texto. - arrastre y suelte el archivo en la carpeta "Descripciones externas" del panel "Explorador de proyectos".
- en el panel "Explorador de proyectos", seleccione la carpeta "Descripciones externas", y luego la opción "Importar un XML o un JSON a este proyecto" del menú contextual.
- El documento JSON aparece en la carpeta "Descripciones externas" del panel Explorador de proyectos. Puede ver su estructura.
- Declare la variable de la siguiente manera:
<Variable name> is JSON, description = <Document name> o
<Variable name> is JSON <description = "Document name"> puede corresponder al nombre del documento de ejemplo (con o sin extensión). Nota: Esta declaración puede obtenerse automáticamente "arrastrando y soltando" el nombre del documento de texto directamente desde el panel "Explorador de proyectos". - Ahora puede acceder directamente a los nodos de la variable por sus nombres. El mecanismo de autocompletado del editor de código propone estos nombres automáticamente.
Nota: También es posible obtener asistencia y verificación en la compilación en una subparte del JSON utilizando la siguiente sintaxis: v2 is JSON, description="JSONFile.Member.SubMember" v2 is JSON, <description="JSONFile.Member.SubMember"> Observaciones Leer y asignar un valor a una variable de tipo JSON - Asignar un valor a una variable JSON
La sintaxis "j = ..." trata de analizar el valor como una cadena JSON. Esta sintaxis es casi equivalente a "j..JSONFormat = ..." excepto si la cadena JSON no es válida. En este caso, la cadena se copia directamente sin ser interpretada, como valor del elemento JSON. La sintaxis "j..Member = ..." asigna el valor del miembro. Esta sintaxis es equivalente a "j..Member..Value =... ". - Leer una variable JSON
La sintaxis "... = j" devuelve la cadena JSON que corresponde al contenido de la variable. Esta sintaxis es equivalente a "... =j..JSONFormat ". La sintaxis "... = j..Member" devuelve el valor del miembro. Esta sintaxis es equivalente a "... =j..Member..Value".
Propiedades específicas de las variables de tipo JSON Las siguiente propiedades permiten manipular variables de tipo JSON: | | | Nombre de la propiedad | Tipo utilizado | Efecto |
---|
Count | Integer | Número de elementos: - 0 para elementos simples,
- 1 para objetos,
- Número de elementos para arrays.
Esta propiedad es de solo lectura. | Exist | Boolean | Esta propiedad está disponible en modo de lectura y escritura. En modo de lectura, la propiedad Exist se establece en:- True si existe el elemento,
- False en caso contrario.
En modo de escritura, si la propiedad Exist se establece en:- True, significa que el elemento/miembro ha sido validado,
- False, significa que el elemento/miembro ha sido eliminado.
| JSONFormat | Character string | Cadena JSON que corresponde al valor del elemento. Si esta cadena no está en formato JSON, se muestra una advertencia. | Member | Array de variables JSON | Miembros de la variable JSON. | Name | Character string | Nombre del miembro. Corresponde a una cadena vacía ("") si no hay ningún miembro. | Type | Integer | Tipo de elemento. Esta propiedad es de solo lectura. | Value | Todos los tipos | - Valor de un elemento simple,
- NULL para un elemento complejo.
|
Recorrer los elementos de una variable de tipo JSON Para recorrer los elementos de una variable de tipo JSON, solo debe utilizar un bucle FOR. JS is JSON
FOR i = 1 TO JS..Member.Count
Trace(JS..Member[i]..Name)
END
Ejemplo: copiar una variable JSON a otra variable JSON recorriendo un array: JsonApplication1 is JSON <description="ListElementsControls1">
JsonApplication2 is JSON <description="ListElementsControls2">
FOR EACH JsonElement1 OF JsonApplication1.ArrElement
JSonElement2 is JSON <description="ListElementsControls1.ArrElement">
JSonElement2.Name = JsonElement1.Name
FOR EACH JsonControl1 OF JsonElement1.ArrControl
JsonControl2 is JSON <description="ListElementsControls1.ArrElement.ArrControl">
JsonControl2.ChangeAllowed = JsonElement1.ChangeAllowed
JsonControl2.Caption = JsonElement1.Caption
JsonControl2.Name = JsonElement1.Name
JsonControl2.Parent = JsonElement1.Parent
JsonControl2.Type = JsonElement1.Type
Add(JSonElement2.ArrControl, JsonControl2)
END
Add(JsonApplication2.ArrElement, JSonElement2)
END
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|