perl JSON与HASH 互相转换

来源:互联网 发布:上哈佛 剑桥 努力 知乎 编辑:程序博客网 时间:2024/05/09 09:47

json---hash的例子

use LWP::Simple;
use Data::Dumper;  
use JSON;
use JSON::XS;


my $json_text = '{"bbb" : {"x" : 3},"a10" : {"b" : 1,"a" : 2},"a2" : {"z" : 4}}';
my $decoded_json = decode_json($json_text);
print Data::Dumper->Dumper($decoded_json);

输出:

$VAR1 = 'Data::Dumper';
$VAR2 = {
          'a10' => {
                     'b' => 1,
                     'a' => 2
                   },
          'a2' => {
                    'z' => 4
                  },
          'bbb' => {
                     'x' => 3
                   }
        };

hash---json的例子

#!/bin/perl
use warnings;
use strict;
use Sort::Naturally;
use JSON;


my $data = {
    'a10' => {
            b => 1,
            a => 2,
    },
    'bbb' => {
            x => 3,
    },
    'a2' => {
            z => 4,
    }
};
my $json = new JSON;
#$json->sort_by(sub { ncmp($JSON::PP::a, $JSON::PP::b) });
my $json_text = $json->pretty->encode ($data);
print $json_text;

输出:
{
  "a10" : {
     "b" : 1,
      "a" : 2
   },
   "bbb" : {
      "x" : 3
   },
   "a2" : {
     "z" : 4
  }
}

1 0