Ami*_*ila 5 string perl json object
我花了很多时间将perl对象转换为JSON String.但我仍然找不到.我用的是JSYNC.但我看到它有一些问题.然后我在perl中使用JSON模块.这是我的代码.
my $accountData = AccountsData ->new();
$accountData->userAccountsDetail(@userAccData);
$accountData->creditCardDetail(@userCrData);
my $json = to_json($accountData,{allow_blessed=>1,convert_blessed=>1});
print $json."\n";
Run Code Online (Sandbox Code Playgroud)
当我运行它打印的代码时null.我有没有做错?
第一版:
use JSON::XS;
use Data::Structure::Util qw/unbless/;
sub serialize {
my $obj = shift;
my $class = ref $obj;
unbless $obj;
my $rslt = encode_json($obj);
bless $obj, $class;
return $rslt;
}
sub deserialize {
my ($json, $class) = @_;
my $obj = decode_json($json);
return bless($obj, $class);
}
Run Code Online (Sandbox Code Playgroud)
第二版:
package SerializablePoint;
use strict;
use warnings;
use base 'Point';
sub TO_JSON {
return { %{ shift() } };
}
1;
package main;
use strict;
use warnings;
use SerializablePoint;
use JSON::XS;
my $point = SerializablePoint->new(10, 20);
my $json = JSON::XS->new->convert_blessed->encode($point);
print "$json\n";
print "point: x = ".$point->get_x().", y = ".$point->get_y()."\n";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3157 次 |
| 最近记录: |