xml02.pl to HTML.

index -|- end

Generated: Tue Feb 2 17:55:00 2010 from xml02.pl 2005/06/17 2.1 KB.

#!/Perl
use Data::Dumper;
use XML::Simple;
my $outfil = shift || 'tempxout.htm';
my ($OF);
my $file = 'position.xml';
my $ky1;
my $tg;
my $k;
my $k2;
my $k3;
my $add1 = 0;
my $html;
my $addr;
##use Socket;
###$name = 'geoffmclane.com';
##$name = 'home.exetel.com.au';
##@addresses = gethostbyname($name)   or die "Can't resolve $name: $!\n";
##@addresses = map { inet_ntoa($_) } @addresses[4 .. $#addresses];
##foreach $k (@addresses) { print "$k\n"; }
##print Dumper(@addresses);
open $OF, ">$outfil" or die "Can not create $outfil!\n";
my $xs1 = XML::Simple->new();
##my $xsl = new XML::Simple(ForceArray => 1, KeepRoot => 1);
#my $xs1 = XML::Simple->new(ForceArray => 1, KeepRoot => 1);
my $doc = $xs1->XMLin($file);
print "Hello, World... loaded $file ...\n";
prt( "<html><head><title>$file</title></head>\n" );
prt( "<body>\n" );
prt( "<center><h1><b>$file</b></h1></center>\n" );
prt( "<table border='1'>\n" );
my $tree1 = 'config';
my $tree2 = 'position';
$k = 'latitude';
$k2 = 'longitude';
my @arr = $doc->{$tree1}->{$tree2};
##prt( incolm("[" . $doc->{$tree1}->{$tree2} . "]\n") );
$html ='';
foreach $k (@arr) {
   if ($html ne '') {
      $html += '|';
   }
   $html += $k
}
prt( incolm("[$html]\n") );
foreach my $key (keys (%{$doc->{$tree1}->{$tree2}})){
##foreach my $key (keys (%{$doc->{position}})){
   prt( addrow( incolm(addbold($key)) ) );
}
prt( "</table>\n" );
prt( "<pre>\n" );
prt( Dumper($doc) );
prt( "</pre>\n" );
prt( addpre("[" . Dumper($doc->{$tree1}->{$tree2}) . "]\n") );
##foreach $addr (@addresses) {
##   my $nm2 = gethostbyaddr(inet_aton($addr), AF_INET)
##            or die "Can't resolve $address: $!\n";
##   prt("$addr - $name - $nm2\n");
##}
prt( "</body>\n" );
prt( "</html>\n" );
close $OF;
system $outfil;
sub addpre {
   my ($tx) = @_;
   return "<pre>\n$tx\n</pre>\n";
}
sub addbold {
   my ($tx) = @_;
   return "<b>$tx</b>";
}
sub incolm {
   my ($tx) = @_;
   return "<td valign='top'>\n$tx\n</td>\n";
}
sub addrow {
   my ($tx) = @_;
   return "<tr>\n$tx\n</tr>\n";
}
sub prt {
   ###tolog (@_);
   print @_;
   print $OF @_;
}
#eof

index -|- top

checked by tidy  Valid HTML 4.01 Transitional