J'ai vérifié comment encoder et décoder JSON en Python, Ruby, JavaScript, PHP.
test_json.py
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#
import json
#Données de format de dictionnaire
dic1 = {"key1": None, "key2": None}
dic1["key1"] = 24
dic1["key2"] = 45
print dic1
#Convertir du format de dictionnaire en JSON
json_data1 = json.dumps(dic1, sort_keys=True,indent=4)
print json_data1
json_data2 = json.dumps(dic1,sort_keys=True)
print json_data2
json_data3 = json.dumps(dic1)
print json_data3
dic2 = json.loads(json_data1)
print dic2
#Reconvertir du format JSON au format dictionnaire
dic2 = json.loads(json_data2)
print dic2
dic2 = json.loads(json_data3)
print dic2
#Reconfirmer l'élément
print dic2["key1"]
print dic2["key2"]
Résultat d'exécution
$ ./test_json.py
{'key2': 45, 'key1': 24}
{
"key1": 24,
"key2": 45
}
{"key1": 24, "key2": 45}
{"key2": 45, "key1": 24}
{u'key2': 45, u'key1': 24}
{u'key2': 45, u'key1': 24}
{u'key2': 45, u'key1': 24}
24
45
test_json.rb
#!/usr/bin/env ruby
# -*- coding:utf-8 -*-
#
require 'json'
#Données au format de hachage
h = {"key1" => 10, "key2" => 40, "key3" => "Window10"}
p h
p h["key1"]
p h["key2"]
p h["Windows10"]
#Convertir du hachage au format JSON
j = JSON.generate(h)
p j
#Convertir de JSON en hachage
x = JSON.parse(j)
p x
Résultat d'exécution
$ ./test_json.rb
{"temp"=>10, "humid"=>40, "pos"=>"window"}
10
40
"window"
"{\"temp\":10,\"humid\":40,\"pos\":\"window\"}"
{"temp"=>10, "humid"=>40, "pos"=>"window"}
Un script qui peut être exécuté à partir de la ligne de commande.
test_json.js
#!/usr/bin/env nodejs
//
var sys = require('util');
//Tableau associatif
var d = { key1: 24 , key2: 45 , key3: "Windows10"};
sys.print(d['key1']+"\n")
sys.print(d['key2']+"\n")
sys.print(d['key3']+"\n")
//Du tableau associatif au format JSON
var json_text = JSON.stringify(d);
sys.print(json_text + "\n")
//Revenir du format JSON à un objet tableau associatif
var obj = JSON.parse(json_text)
sys.print(obj['key1']+"\n")
sys.print(obj['key2']+"\n")
sys.print(obj['key3']+"\n")
Résultat d'exécution
$ ./test_json.js
24
45
Windows10
{"key1":24,"key2":45,"key3":"Windows10"}
24
45
Windows10
test_json.php
#!/usr/bin/env php5
<?PHP
/*Tableau associatif*/
$arr = array('key1' => 24, 'key2' =>45, 'key3' => 'windows');
print "{$arr['key1']}\n";
print "{$arr['key2']}\n";
print "{$arr['key3']}\n";
/*Convertir en texte au format JSON*/
$json_text = json_encode($arr);
print "{$json_text}\n";
/*Convertir en tableau associatif*/
$obj = json_decode($json_text);
print "{$obj->{'key1'}}\n";
print "{$obj->{'key2'}}\n";
print "{$obj->{'key3'}}\n";
?>
Résultat d'exécution
$ ./test_json.php
24
45
windows
{"key1":24,"key2":45,"key3":"windows"}
24
45
windows
Recommended Posts