加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl 读取json 数据

发布时间:2020-12-15 21:06:56 所属栏目:大数据 来源:网络整理
导读:perl 读取json 数据 JSON (JavaScript Object Notation) 数据格式,官方的说法是“一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成“。 我的感觉是这个东东和XML之类的格式类似,总之当我们需要格式化地传输数据时,这些东西就可以
perl 读取json 数据

JSON (JavaScript Object Notation) 数据格式,官方的说法是“一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成“。

我的感觉是这个东东和XML之类的格式类似,总之当我们需要格式化地传输数据时,这些东西就可以起作用了。 关于JSON本身是怎么组织数据的,可以去这里。

数据格式定义好了,剩下的事情就是用编程语言解析它。 这里介绍Perl中JSON模块, 下面的这段代码能够完成将JSON格式的数据转化成Perl数据结构!这太方便了,有了Perl的数据结构,我们就可以方便的用Perl对这些数据进行访问了.


json 格式:

json.html 的json内容为:
{
"uns":"chengjun",
"pwd":"12344"
}

PERL读取
#!/usr/bin/perl

use Encode;
use JSON;
use Data::Dumper;

print "读取json数据...n";

my $json = new JSON;
my $js;


if(open(MYFILE,"D:/workspace/perl/json.html"))
{
print "读取json数据成功。n";
while(<MYFILE>)
{
$js .= "$_";
}
}else{
print "读取json数据失败。n";
}

my $obj = $json->decode($js);
print "json数据为:".Dumper($obj);
print $obj->{'uns'};
close(MYFILE);

==============================================
以上为简单的json数据,如果遇到json数组怎么办了?!
例如:

{
"un":"chengjun",
"pwd":[{
?? "g1":"g1value",
?? "g2":"g2value"
},{
???? "g1":"g1111value",
?? "g2":"g2222value"
}
]
}
对应的perl为:
use JSON;
use Data::Dumper;

print "测试json数据...n";

my $json = new JSON;
my $js ;

if(open(Myfile,"e:/perlwork/json.html")){
printf "打开json数据成功n";

while(<Myfile>){
?? $js .= "$_";
}

my $obj = $json->decode($js);
printf Dumper($obj)."n";

for my $item(@{$obj->{'pwd'}}){ ??? print $item->{'g1'}."n"; ?? } }else{ die("打开json数据失败!!!!!!");

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读