in reply to Re: Xml File Reading from PERL
in thread Xml File Reading from PERL

Thanks so much for the reply.... i will follow it from now on Now my xml file looks like ConfigFile.xml **************** <config> <table name="contract"> <columnname>DATE extract</columnname> <columnname>DATE_deleted</columnname> </table> <table name="contract_hist"> <columnname>DATE1</columnname> <columnname>DATE2</columnname> </table> <table name="address"> <columnname>DATE1</columnname> <columnname>DATE2</columnname> <columnname>DATE3</columnname> </table> </config> I read my config xml file, for "address" i should get 3 date values(DA +TE1,DATE2 and DATE3) How can i do this in code?? Please help </config>

Replies are listed 'Best First'.
Re^3: Xml File Reading from PERL
by kielstirling (Scribe) on Feb 16, 2012 at 00:20 UTC
    Hi,

    If you run the new XML format via the example script I showed you it will output the new data structure.

    I'm not going to do it for you however I am willing to help you. If you have problems with complex data structures I suggest you read the following The Perl Data Structures Cookbook

      <code> I can able to develop the code like this ********************************************* my $xml = new XML::Simple; my $tblnm="OXF_SIC"; my $config = XMLin('check2.config', ForceArray => [], keyattr => []); foreach my $table (@{$config->{table}}) { if ($table->{name} eq $tblnm) { foreach my $col (@{$table->{columnname}}) { print "$col \n"; } } } ********************************************************** the check2.config file looks like this <config> <columnname>DATE_MODIFIED_ODS</columnname> <columnname>DATE_CREATED_ODS</columnname>
      <columnname>DATE_MODIFIED_ODS</columnname>
      </config> Here i am getting proper output if my $tblnm="OXF_SIC" but when i changed the code to my $tblnm="OXF_SUBSIDIARY" then its throwing the error as:- Can't use string ("DATE_MODIFIED_ODS") as an ARRAY ref while "strict refs" in use at check2_Feb27.pl line 37. Please help me out in this, i am just beginner in Perl this is my 2nd Perl script pls help me <\code>