Leser: 17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use warnings ;
use strict ;
use diagnostics ;
use Win32::OLE qw(in);
use Cwd ;
my @files = <*.doc> ;
foreach my $infile (@files) {
$infile =~ /(.*).doc/ ;
my $outfile = $1 . '.txt' ;
$infile = Win32::GetCwd() . "/$infile" if $infile !~ /^(\w:)?[\/\\]/;
$outfile = Win32::GetCwd() . "/$outfile" if $outfile !~ /^(\w:)?[\/\\]/;
my $Word = Win32::OLE->new('Word.Application', 'Quit')
or die "Couldn't run Word";
my $Doc = $Word->Documents->Open($infile) or die Win32::OLE->LastError();
open(OUT,">$outfile");
print OUT $Doc->{Content}->{Text};
close OUT;
}
Guest weißnix
1
2
3
4
5
use Encode;
open(OUT,">$outfile");
binmode OUT, ':encoding(utf-8)';
print OUT $Doc->{Content}->{Text};
close OUT;