【问题标题】:How can I parse JSON in Perl?如何在 Perl 中解析 JSON?
【发布时间】:2010-12-05 07:24:31
【问题描述】:

我想使用 Perl 脚本来获取 JSON 数据并将其转换为 XML 文件。如何在 Perl 中做到这一点?

【问题讨论】:

  • 不要放入开玩笑的标签。这让人们更难找到问题和答案。
  • @Alex Reynolds:有些问题值得回答,有些则不需要。具体来说,send-me-teh-codez 类型的问题不会。但是,有时可以挽救这个问题。在这种情况下,经过第二次考虑,我决定解决这个问题。将来,您可能还想修复问题以及编辑标签。至于我对什么时候应该解决问题而不是让问题束手无策的态度,请参阅meta.stackexchange.com/questions/24838/…

标签: xml perl json


【解决方案1】:
use JSON;

my $json_string = '................';

my $deserialized = from_json( $json_string );

就是这样 - 您的 JSON 数据被解析并存储在 $deserialized 中。

【讨论】:

  • 如果完全关心性能,也安装 JSON::XS(如果存在 JSON 将使用它...无需更改代码)。
  • 好吧,当然不是。没有关于 xml 外观的信息(例如:应该是什么属性,以及什么标签),因此如果没有模式规范,就不可能从数据中构建 xml。如果架构是“任何,只要让它有效” - use XML::Simple; print XMLout( $deserialized );
【解决方案2】:

安装:XML::XML2JSON

sudo cpan XML::XML2JSON

然后尝试:

use XML::XML2JSON;
my $JSON = '{"entry":{"name":"Douglas Crockford","phone":"555 123 456"}}';
my $XML2JSON = XML::XML2JSON->new();
my $Obj = $XML2JSON->json2obj($JSON);
my $XML = $XML2JSON->obj2xml($Obj);
print $XML;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-16
    • 2021-06-05
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 2012-04-12
    • 1970-01-01
    • 2019-05-07
    相关资源
    最近更新 更多