in reply to Re: Writing to a file
in thread Writing to a file
Please can you tell me why the output in sourcetag1.xml is displayed as below:#!/usr/bin/perl use strict; use warnings; my $fh; my $tag; while(<DATA>){ chomp $_; $_ =~ s/[\cA-\cZ]//g; #$_ =~ s/^\s+$//g; #$_ =~ s/\n//g; #$_=~ s/[\r]//gs; if(/^{(.*)}/) { $tag = $1; print $tag."\n";; } else { if($tag eq 'FILE') { my $filename = $_; # print "The filename is $filename\n"; open($fh, '>', "$filename.xml") or die "$filename: $!"; print $fh '<?xml version="1.0"?>',"\n"; print $fh "<root>\n"; print $fh "<FILE>$filename</FILE>"; } elsif(defined($fh)) { if( $_ ne ''){ #### Remove the blnak lines chomp $_; print $fh "<$tag>$_</$tag>\n"; } #print $fh "</root>"; } } } close($fh); exit(0); __DATA__ ^B^B^B^B^B^B {FILE} sourcetag1 {NUMBER} 00000 {SOURCE} source1 {KEYWORD} {AUTHOR} author1 staff1 {HEADLINE} DISPOSABLE DECOR: THE CUTTING EDGE DULLS FAST\ STYLE AT A SPEED USUALLY ASSOCIATED WITH WARDROBE ITEMS. {FILE} sourcetag2 {NUMBER} 00002 {SOURCE} sourcenam2 {KEYWORD} {AUTHOR} author2 staff2
The <HEADLINE> is repeated 3 times<?xml version="1.0"?> <root> <FILE>sourcetag1</FILE><NUMBER>00000</NUMBER> <SOURCE>source1</SOURCE> <AUTHOR>author1</AUTHOR> <AUTHOR>staff1</AUTHOR> <HEADLINE>DISPOSABLE DECOR: THE CUTTING EDGE DULLS FAST\</HEADLINE> <HEADLINE>STYLE AT A SPEED</HEADLINE> <HEADLINE>USUALLY ASSOCIATED WITH WARDROBE ITEMS.</HEADLINE>
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Writing to a file
by Anonymous Monk on Aug 14, 2009 at 06:26 UTC | |
|
Re^3: Writing to a file
by ig (Vicar) on Aug 15, 2009 at 06:22 UTC |