2012-01-30 77 views
-1

我有一个以下数据,我想用to_json将它转换为JSON。Perl json数组使用to_json

的数据是

[ 
    {"key":"firstname", "val":"Scott"}, 
    {"key":"age",  "val":"old"}, 
    {"key":"haircolor", "val":"na"}, 
] 

我通常使用Perl中的哈希建立我的JSON和使用to_json转换。但是对于每个iterm的这个json数组,我没有密钥。那么我怎样才能使用to_json进行转换。

例如

my %data = (
     "key" => "firstname", 
     "val" => "Scott", 
     ... 
    ) 

感谢,

附:我不想制作一个字符串并将其转换为json。但如果我必须,我会的。 :-)

+0

你已经的数据是JSON(除了后面的逗号,我不认为是有效的)。你究竟想要做什么? – 2012-01-30 18:50:12

+0

@EricStrom - 技术上尾随的逗号无效,但是 - 假设OP使用JSON模块 - [可以在启用'relaxed'时解析](http://search.cpan.org /~makamaka/JSON-2.53/lib/JSON.pm#relaxed)。 – 2012-02-08 20:53:08

回答

2
my $data=[ 
      { key => "firstname", 'val' , "Scott" }, 
      { "key" => "age",  "val" => "old" }, 
      { 'key', 'haircolor', val => "na" }, 
     ]; 
my @data = (
    { key => "firstname", val => "Scott" }, 
    { key => "age",  val => "old" }, 
    { key => 'haircolor', val => "na" }, 
);