|
|
|
|
|
- Désérialisation
- Rapidité
- Limites
Désérialise (Fonction) En anglais : Deserialize Désérialise un buffer ou une chaîne de caractères contenant les données d'une classe, d'une structure, d'un tableau (y compris un tableau associatif), d'une file, d'une pile, une liste ou une variable d'un type avancé (par exemple gglAgenda) et leurs sous-éléments.
MonTableau est un tableau de chaînes
bufRésultat est un Buffer
Ajoute(MonTableau, "WINDEV")
Ajoute(MonTableau, "WEBDEV")
Ajoute(MonTableau, "WINDEV MOBILE")
Sérialise(MonTableau, bufRésultat, psdJSON)
MonTableauReconstruit est un tableau de chaînes
Désérialise(MonTableauReconstruit, bufRésultat, psdJSON)
Syntaxe
Désérialise(<Variable> , <Buffer> , <Paramètres>)
<Variable> : Type de la variable Variable de type structure, classe, tableau, file, liste ou pile. - Dans le cas d'une structure ou d'une classe, cette variable doit être allouée.
- Dans le cas d'un tableau, d'une file, d'une liste ou d'une pile, cette variable est automatiquement allouée lors de la désérialisation.
La désérialisation sera effectuée dans cette variable. <Buffer> : Chaîne de caractères Ansi ou buffer Variable qui contient les données sérialisées. Il est nécessaire d'indiquer un nom de variable. <Paramètres> : Constante de type Entier Type de désérialisation (doit correspondre au type choisi pour la sérialisation) : | | psdBinaire | Désérialisation binaire.
| psdBinaireFormat16 | Désérialisation binaire au format compatible avec la version 16. Ce format doit être utilisé si une application en version 17 (ou supérieure) doit fournir des données à une application en version 16 ou inférieure. Ce format ne doit pas être utilisé en mode Unicode. | psdJSON | Désérialisation au format JSON. | psdXML | Désérialisation XML avec référence aux sous-objets. Rappel : Ce type de sérialisation/désérialisation permet d'utiliser le format XML comme moyen de stockage et d'échange entre des applications écrites en WLangage. | psdXMLAgrégé | Désérialisation XML avec agrégation directe des sous-objets. Remarque : La sérialisation en mode psdXMLAgrégé permet de générer rapidement un fichier XML dans un format classique, utilisé pour des échanges avec d'autres systèmes. La désérialisation en mode psdXMLAgrégé est disponible, cependant les éléments WLangage (variants, tableaux, classes dérivées, ...) ne seront pas les mêmes que ceux d'origine. |
Remarques Désérialisation La désérialisation d'une variable de type Tableau, File ou Pile supprime le contenu de l'élément. S'il y a des membres en plus dans la structure ou dans la classe : - si on désérialise une structure ou une classe : les membres supplémentaires conservent leurs valeurs d'avant la désérialisation.
- si on désérialise un tableau de structures ou de classes : les membres supplémentaires prennent la valeur par défaut du type du membre.
S'il y a des membres en plus dans le buffer sérialisé, ils ne sont pas pris en compte lors de la désérialisation. Pour désérialiser un tableau dynamique sans type, il est nécessaire d'allouer préalablement ce tableau. Pour désérialiser une classe ou une structure contenant un tableau dynamique sans type, il est nécessaire d'allouer préalablement ce tableau. La désérialisation XML nécessite la librairie wd300xml.dll ou wp300xml.dll. Une variable de type avancé qui a été sérialisé avec un produit anglais (et dont les noms des propriétés sont en anglais dans le buffer de sérialisation) peut être désérialisée avec un produit français (et réciproquement). Dans les variables de type avancé : - les propriétés en lecture seule ne sont généralement pas désérialisables.
- les propriétés en écriture seule ne sont généralement pas sérialisables.
Les cas particuliers sont indiqués dans la documentation de chaque type. Rapidité La désérialisation binaire est plus rapide que la désérialisation XML.
Liste des exemples associés :
|
Exemples unitaires (WEBDEV) : Les fonctions Sérialise/Désérialise
[ + ] Utilisation des fonctions WLangage Sérialise et Désérialise. La sérialisation consiste à sauvegarder une variable, un objet, une structure, un tableau ou tout autre élément dans un buffer. Ce buffer peut ensuite être sauvegardé sur disque ou envoyé par socket. Cela permet la persistance des objets. La fonction Désérialise permet de reconstruire un objet, un tableau ou une structure à partir d'un buffer.
|
|
Exemples unitaires (WINDEV) : Les fonctions Sérialise/Désérialise
[ + ] Utilisation des fonctions WLangage Sérialise et Désérialise. La sérialisation consiste à sauvegarder une variable, un objet, une structure, un tableau ou tout autre élément dans un buffer. Ce buffer peut être ensuite sauvegardé sur disque ou envoyé par socket. Cela permet la persistance des objets. La fonction Désérialise permet de reconstruire un objet, un tableau ou une structure à partir d'un buffer.
|
Classification Métier / UI : Code neutre
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|