[精讚] [會員登入]
222

[PERL] JSON物件的使用

PERL要處理JSON,可以使用perl提供的模組,一些技巧整理。

分享此文連結 //n.sfs.tw/16442

分享連結 [PERL] JSON物件的使用@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2025-11-05 00:58:40 最後編修
2024-08-24 00:22:00 By 張○○
 

自動目錄

PERL要使用json,可以使用 JSON這個模組。

use JSON;

 

一、安裝[1]

yum install cpan

cpan install JSON

二、將 hash 轉成json、json_encode

1. 使用 JSON 模組

use JSON;

my %data = (
    name => "Alice",
    age  => 25,
    skills => ["Perl", "Python", "C++"]
);

# 建立 JSON 物件
my $json = JSON->new->utf8->pretty;

# 轉成 JSON 字串
my $json_text = $json->encode(\%data);

print $json_text;

結果

{
   "age" : 25,
   "name" : "Alice",
   "skills" : [
      "Perl",
      "Python",
      "C++"
   ]
}

2. 使用 JSON::PP 這個模組

use JSON::PP;

my %hash = (
    fruit => "apple",
    color => "red"
);

my $json = JSON::PP->new->utf8->pretty->encode(\%hash);

print $json;

3. 使用 json_encode

use JSON;
print encode_json(\%hash);

 

三、將 json 轉成物件

my $decoded = decode_json($json_text);
print $decoded->{name};

 

四、傾印hash

foreach my $key (keys %hash) {
    print "$key => $hash{$key}\n";
}

或用dumper

use Data::Dumper;

my %hash = (
    name => "Alice",
    age  => 25,
    hobbies => ["music", "reading"],
);

print Dumper(\%hash);

結果

$VAR1 = {
      'hobbies' => [
           'music',
           'reading'
      ],
      'age' => 25,
      'name' => 'Alice'
   };

 

 

參考資料

[1] https://stackoverflow.com/questions/12027327/how-to-install-json-pm-perl-module-on-osx

[2] https://stackoverflow.com/questions/48304117/perl-iterate-through-a-json-string-get-key-value-object-in-one-variable

END

你可能感興趣的文章

[PERL] 01-撰寫第一隻PERL程式及目錄 PERL的系列教學文,適合有其他程式經驗但沒學過PERL的人

[PERL] 19-模組的安裝和維護 模組的安裝和維護

PERL 正規表達式會用到的符號 PERL在比對時常常會用到符號整理

[PERL] Regex 字元集(群組) 幾個Perl在regular express會用到的特殊符號notation:字元集

[PERL] 簡易檢查網頁記錄檔ip來源統計 利用PERL來檢查網頁記錄檔ip來源統計的簡易程式

[PERL] 17-參照 PERL的參照,就是指標

隨機好文

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

維修海棉拖把頭 這類型的海棉拖把很好用,可是這近發現海棉頭越來越不耐用,也許是錯覺,以往都能用個三四個月,現在二個月就差不多掉下來。 這

[AS3] FLASH 引入外部as檔 FLASH AS3中,若要引用另外撰寫的 class(*.as) 檔案,該如何處理?

[Apache] 自訂錯誤頁面及移掉歡迎頁 Apache 有一個歡迎頁,以正式網站來說,出現這頁有點不專業,該移除它..

我的便利帶變垃圾袋--談預付制 預付制說穿了,就是對賣家極有利,對買家極小利的消費經營模式。