• 0

كيف أقرأ ملف XML بـ Perl؟

أتوفر على ملف xml على الشكل التالي:

<queue>
   <user>1</user>
   <user>2</user>
   <user>3</user>
</queue>

وبالمقابل ﻷريد قراءة هذا الملف بسكريبت مكتوب بلغة Perl، حاولت جاهد فعل ذلك، وهذا ما توصلت إليه من كود:

use XML::Simple;
use Data::Dumper;
my $xml = "<queue><user>1</user><user>2</user></queue>";

my $xml_obj = XMLin($xml, forcearray => 1);

my $users = $xml_obj->{'queue'};

foreach my $v (@users){
        print $v;
}

لكن يبدو أن الأمر أصعب مما تخيلت، ولم ينحج الأمر معي، فهل من مساعدة؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

XML:Simple ليست بالمكتبة سهلة الاستعمال، حيث يعاب عليها في كثير من الأمور التقنية، لكن يمكنك استخدامها في نهاية المطاف، الخطأ الذي اقترفته في كودك البرمجي هو استعمالك للجذر queue ، في حين كان الأجدر استعمال الابن user، هكذا:

my $users = $xml_obj->{'queue'};

ليصبح الكود كاملا على الشكل التالي:

#!/usr/bin/env perl
use strict;
use warnings;

use XML::Simple;
use Data::Dumper;

my $xml = "<queue><user>1</user><user>2</user></queue>";

my $xml_obj = XMLin($xml, forcearray => 1);

my $users = $xml_obj->{'user'};

foreach my $v (@$users){
        print $v;
}

Parse XML with Perl

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن