summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--modules/perlconverters/zef2osis.pl12
1 files changed, 11 insertions, 1 deletions
diff --git a/modules/perlconverters/zef2osis.pl b/modules/perlconverters/zef2osis.pl
index be740d0..848a489 100644
--- a/modules/perlconverters/zef2osis.pl
+++ b/modules/perlconverters/zef2osis.pl
@@ -93,11 +93,17 @@ sub delempty {
return $iline;
}
+$enc = "utf8";
+
$q = 0;
foreach $line (@data) {
if ($pr == 1) {
+ if ($enc ne "utf8") {
+ utf8::encode($line);
+ }
+
$line =~ s/[\r\n]+/\n/g;
$line =~ s/^\s+//;
$line =~ s/\s+$//;
@@ -167,7 +173,11 @@ foreach $line (@data) {
print OUTF "$line\n";
}
}
- if ($line =~ /<\/INFORMATION>/) {
+ elsif ($line =~ /<\?xml .*?encoding=\"[Ii][Ss][Oo]\-8859\-1\"\?>/) {
+ use encoding 'latin1';
+ $enc = "latin1";
+ }
+ elsif ($line =~ /<\/INFORMATION>/) {
$pr = 1;
}