Page 1 sur 1

JSON

Publié : lun. 22/mai/2017 8:51
par Lutin
Bonjour,

Je viens de réussir à créer un tableau à deux dimensions qui comporte 150 lignes et 36 colonnes :

Code : Tout sélectionner

  Dim TableauMultiple.s(35, 149)
  For i = 0 To 35
    For z = 0 To 149
   
    XY.s = "L" + Str(z) + "C" + Str(i)
      Debug XY
      TableauMultiple (i,z) = XY
    Next z
  Next i
J'aimerais maintenant sauvegarder ce tableau au format JSon dans mon répertoire "C:\Sauvegarde\exemple.json" et pouvoir le recharger plus tard.

J'ai regardé dans la doc et le forum, mais je ne m'en sors pas.

Pouvez-vous m'aider ?

Merci d'avance.

Re: JSON

Publié : lun. 22/mai/2017 10:58
par TazNormand
Salut Lutin,

Une réponse possible fait d'après la doc de PB sur le JSON, ne sachant pas quelle structure JSON tu attends en sortie :

Code : Tout sélectionner

If CreateJSON(0)
  Dim TableauMultiple.s(35, 149)  
  Objet = SetJSONArray(JSONValue(0))
  For i = 0 To 35
    For z = 0 To 149
      
      SetJSONInteger(AddJSONElement(Objet), z)
      SetJSONInteger(AddJSONElement(Objet), i)
        
      XY.s = "L" + Str(z) + "C" + Str(i)
      Debug XY
      TableauMultiple (i,z) = XY
    Next z
  Next i
  
  Debug ComposeJSON(0, #PB_JSON_PrettyPrint)
  
  ; Sauver le fichier JSON
  fichier=SaveJSON(0,"MonFichierJSON.txt",#PB_JSON_PrettyPrint)
EndIf
PS : j'ai modifié ton topic pour que le code apparaisse entre des balises "code"

Re: JSON

Publié : lun. 22/mai/2017 14:40
par falsam
Plus simplement

■ Creation et Sauvegarde du tableau.

Code : Tout sélectionner

Dim TableauMultiple.s(35, 149)

;Creation des données 
For i = 0 To 35
  For z = 0 To 149
    XY.s = "L" + Str(z) + "C" + Str(i)
    TableauMultiple (i,z) = XY
  Next z
Next i

;Sauvegarde des données 
If CreateJSON(0)
  InsertJSONArray(JSONValue(0), TableauMultiple())
  Debug ComposeJSON(0, #PB_JSON_PrettyPrint)
  SaveJSON(0, "example.json")  
EndIf
■ Lecture du tableau sauvegardé.

Code : Tout sélectionner

;Déclaration du tableau à deux dimensions. 
;Inutile de définir la taille
Dim TableauMultiple.s(0, 0) 

;Lecture du fichier JSON sauvegardé 
If LoadJSON(0, "example.json")
  
  ;Extraction des données dans le tableau. 
  ;Le tableau sera automatiquement redimensionné
  ExtractJSONArray(JSONValue(0), TableauMultiple())
EndIf

;Controle
For i = 0 To 35
  For z = 0 To 149
    Debug TableauMultiple(i, z)
  Next
Next
PS : Sauvegarder chacun de ces codes au préalable.

Re: JSON

Publié : mar. 23/mai/2017 13:07
par Lutin
Bonjour TazNormad et Falsam, désolé de ne pas avoir pu vous remercier plus tôt. C'est super gentil. Merci beaucoup.

Lutin

Re: JSON

Publié : mar. 23/mai/2017 18:08
par Lutin
Génial, merci encore

Lutin