Sponsored Content
Top Forums Programming Help me with perl programming Post 302563916 by Skrynesaver on Wednesday 12th of October 2011 11:47:32 AM
Old 10-12-2011
Ahh, now I get you, your module would look a bit like this...

Code:
#!/usr/bin/perl

package  My::XML::AsHash; # or whatever you want to call the package (remember to have the appropriate directory structure)

use warnings; 
use strict; 
use XML::LibXML::Reader; 
my $DEBUG=1; 
sub new{
   my($proto,%args)=@_;
   my $class= ref($proto)||proto; #Make inheritable
   my $self;    open( $self->{file}, '<', $args{'file'});
   my $reader = XML::LibXML::Reader->new( IO => $self->{file} ) 
      or die ("unable to open file");    # my $self->{nums};    
   while ($reader->nextElement( 'Data' ) ) {
        my $des = $reader->readOuterXml();
        $reader->nextElement( 'Number' );
         my $desnode = $reader->readInnerXml();
         $self->{nums}->{$desnode}= $des;
        print( " NUMBER: $desnode\n" ) if $DEBUG;
        print( " Datainfo: $des\n" ) if $DEBUG;
   }
   bless($self,$class);
}
exit 1;

It would be saved in for example /home/veerubiji/perl_libs/My/XML/AsHash.pm and would be called as follows
Code:
#!/usr/bin/perl
push @INC '/home/veerubiji/perl_libs/';
use My::XML::AsHash;
my $hash_of_xml=My::XML::AsHash->new(file=>'formal.xml');
for my $desnode (keys %{$hash_of_xml->{nums}}){
    print "$hash_of_xml->{nums}->{$desnode} is the value associated with $desnode\n";
}

This is a very rough and ready module however and I would STRONGLY recommend reading through perldoc perlboot and perldoc perltoot. A real world module should have an associated test suite, would provide accessors to the nums hash rather than exposing them directly, would have a perldoc section so that others could re-use your code and finally would be packaged so that you could install it on any of your users workstationsh2xs -XA -n My::XML::AsHash.
For someone who is at the beginning of their Perl coding you've jumped into the deep end, Have fun!

Last edited by Skrynesaver; 10-12-2011 at 12:58 PM..
This User Gave Thanks to Skrynesaver For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

PERL - DB programming

Hi friends, What are the possible ways to connect to DB2 database from Perl (on unix). I need to connect to DB2 and get records for further processing. Can you please suggest the best possible way. I heard about DBI/DBD, if you have some sample scripts please post them too. Thanks in advance. (3 Replies)
Discussion started by: satguyz
3 Replies

2. Shell Programming and Scripting

Perl Programming for Splitting

Hi, I am extracting SQL queries into a file and the file is as follows ********************************************************* select BatchKey ,restartStatus ,batchContextBuffer ,batchPgmId ,StartKey , EndKey ,Mcbatchcontrol_ver from qsecminload.Mcbatchcontrol_t where RefId = :1 ... (5 Replies)
Discussion started by: sagarbsa
5 Replies

3. Programming

Perl Programming with Mapping

use strict; print "Enter last 4 digits of phone number:"; chomp(my $number=<>); die "Invalid number: '$number'\n" unless $number=~/^\d{4}$/; my @d=split(undef,$number); my %map={ 2=>"", 3=>"", 4=>"", 5=>"", 6=>"", 7=>"", 8=>"", 9=>"", }; my $r=$map{$d}.$map{$d}.$map{$d}.$map{$d};... (1 Reply)
Discussion started by: tturn33
1 Replies

4. UNIX for Dummies Questions & Answers

Is PERL a programming language?

I need a small and simple clarification... Can someone tell me whether PERL is a programming language or not. Also, can shell scripts also considered as programming language or not. Also, please tell me the exact difference between programming language and scripting. Please help.... (3 Replies)
Discussion started by: Anjan1
3 Replies

5. Shell Programming and Scripting

Perl Vs Shell Programming

Can someone please tell me what the big deal about perl is? i have been doing shell programming for quite a number of years and I have to say, there's very little if any thing that I can't do in shell programming. i just need to investigate how to do it. so, my question is, does deep... (1 Reply)
Discussion started by: SkySmart
1 Replies

6. Shell Programming and Scripting

Perl programming error

Hi, everyone!! i am new to perl programming.. plz help me. #!C:/perl/bin use warnings; use strict; use Text::CSV_XS; my @rows = ""; my $row; my $count; my $fh; my @fields = ""; my $csv = Text::CSV_XS->new ({binary =>1}) or die "cannot use CSV:" .Text::CSV->error_diag (); open... (3 Replies)
Discussion started by: kvth
3 Replies

7. Programming

Programming help - Perl !

I am having a text file with Vivek 50 Ram 34 Hulk 45 Vivek 23 Ram 23 Vivek 55 Now I need a perl script to display the fields of 1st column & the 2nd column with summation (& avoid the duplicates). Vivek 128 Ram 57 hulk 45 Plz help me... (1 Reply)
Discussion started by: gameboy87
1 Replies

8. Shell Programming and Scripting

perl programming

how to link the linux files in perl on the local webpage ???? suppose we have some results and want to get them published on the local webpage of our internal site. how this can be done using HTML and perl together , so that the results are published directly on the webpage. thanks kullu (0 Replies)
Discussion started by: kullu
0 Replies

9. Shell Programming and Scripting

Perl programming help

I am trying to make a simple perl program that reads 20 characters upstream from the codon ATG in a given sequence. The following is what I have. I just dont know how to make the program read 20 characters upstream from the ATG codon. print "\nThis program will read 20 characters upstream... (1 Reply)
Discussion started by: patiencenpray
1 Replies

10. Shell Programming and Scripting

Perl programming issue

Dears, I want to print filename and count of each file in perl but failing to implement. `find $srcFolder -maxdepth 1 -type f -name "*$workDate*$fileExt" -exec sh -c ' && printf "$workDate|%s|%s\n" "$(wc -l<"$0")" *$workDate*$fileExt' {} \ >> /Sadique/filelog.out \\; 2> /dev/null`; ... (2 Replies)
Discussion started by: sadique.manzar
2 Replies
XML::LibXML::Comment(3) 				User Contributed Perl Documentation				   XML::LibXML::Comment(3)

NAME
XML::LibXML::Comment - XML::LibXML Comment Class SYNOPSIS
use XML::LibXML; # Only methods specific to Comment nodes are listed here, # see XML::LibXML::Node manpage for other methods $node = XML::LibXML::Comment->new( $content ); DESCRIPTION
This class provides all functions of XML::LibXML::Text, but for comment nodes. This can be done, since only the output of the node types is different, but not the data structure. :-) METHODS
The class inherits from XML::LibXML::Node. The documentation for Inherited methods is not listed here. Many functions listed here are extensively documented in the DOM Level 3 specification (<http://www.w3.org/TR/DOM-Level-3-Core/>). Please refer to the specification for extensive documentation. new $node = XML::LibXML::Comment->new( $content ); The constructor is the only provided function for this package. It is required, because libxml2 treats text nodes and comment nodes slightly differently. AUTHORS
Matt Sergeant, Christian Glahn, Petr Pajas VERSION
2.0018 COPYRIGHT
2001-2007, AxKit.com Ltd. 2002-2006, Christian Glahn. 2006-2009, Petr Pajas. perl v5.16.3 2013-05-13 XML::LibXML::Comment(3)
All times are GMT -4. The time now is 10:28 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy