Leser: 22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
use Win32::OLE qw(in);
$Win32::OLE::Warn = 3;
my $pkorr = 'E:/temp/';
my $file_in = $pkorr.'test2.doc';
$file_out = $pkorr.'reqs.txt';
my $rw = open(SCHREIBEN,"> ".$file_out);
my $Word = Win32::OLE->new('Word.Application', 'Quit') or die "Word problem: ",Win32::OLE->LastError();
my $Doc = $Word->Documents->Open($file_in) or die "Word problem: ",Win32::OLE->LastError();
print "There are ".$Doc->Paragraphs()->Count()." paragraphs.\n";
foreach my $Paragraph ( in( $Doc->Paragraphs() ) )
{
$ParaCount++;
print "(Paragraph $ParaCount) " . $Paragraph->Range()->Characters()->Count() . " characters\n";
$style = $Paragraph->Style()->NameLocal();
print "+$style\n";
if ($style =~ /Überschrift/)
{
$ueberschrift = $Paragraph->Range()->Text();
}
$in = $Paragraph->Range()->Text();
print $in."\n";
if ($in =~ /(RAS-ID [0-9]{0,5}) (.*) \[(.*)\](.*)\[(.*)\]/)
{
$Paragraph->Range()->Select();
my $Selection = $Word->Selection();
$page = $Selection->Information(wdActiveEndPageNumber);
# $page = $Paragraph->Range()->Information(wdActiveEndPageNumber);
print SCHREIBEN "****** Requirement found\n";
print SCHREIBEN "ID: $1\n";
print SCHREIBEN "Text: $2\n";
print SCHREIBEN "Referenzen: $3\n";
print SCHREIBEN "Internal ID: $5\n";
print SCHREIBEN "Kapitel: $ueberschrift\n\n";
print SCHREIBEN "Seite: ".$page;
print "****** Requirement found\n";
print "ID: $1\n";
print "Text: $2\n";
print "Referenzen: $3\n";
print "Internal ID: $5\n";
print "Kapitel: $ueberschrift\n\n";
print "Seite: ".$page;
}
}
close(SCHREIBEN);
1 2 3 4
use File::Spec; my @pkorr = qw(E: temp); my $file_in = File::Spec->catfile( @pkorr, 'test2.doc' );
2009-10-01T15:40:05 renee* Benutze besser File::Spec und mach dann statt
das hier:Code (perl): (dl )1 2 3 4use File::Spec; my @pkorr = qw(E: temp); my $file_in = File::Spec->catfile( @pkorr, 'test2.doc' );
* So wie du das open benutzt, hast Du potentiell mal Probleme. Siehe auch http://reneeb-perlblog.blogspot.com/2009/09/versch...
2009-10-02T06:40:11 CrianDu hast da sicher Recht und der Verlinkte Blog-Eintrag ist auch interessant (und richtig), allerdings wird dort File::Spec->catfile gar nicht behandelt. War das nur eine zusätzliche Information, oder hast du den falschen verlinkt? =)
2009-10-02T06:40:11 Crian2009-10-01T15:40:05 renee* So wie du das open benutzt, hast Du potentiell mal Probleme. Siehe auch http://reneeb-perlblog.blogspot.com/2009/09/versch...
Du hast da sicher Recht und der Verlinkte Blog-Eintrag ist auch interessant (und richtig), allerdings wird dort File::Spec->catfile gar nicht behandelt. War das nur eine zusätzliche Information, oder hast du den falschen verlinkt? =)