use strict; use warnings; use Cwd; use Win32::OLE::Const 'Microsoft Word'; my $Word = Win32::OLE->new('Word.Application'); $Word->{'Visible'} = 1; $Word->{DisplayAlerts} = 0; my $folderpath=getcwd()."/"; opendir(RDIR,"$folderpath"); for my $xmlfile (readdir(RDIR)) { if ($xmlfile=~/\.doc$/) { $xmlfile=$folderpath.$xmlfile; my $xmlfile1=$xmlfile; $xmlfile1=~s/\.doc$/\.xml/; my $doc = $Word->Documents->Open("$xmlfile"); $Word->ActiveDocument->SaveAs({FileName=>"$xmlfile1"}); $Word->{ActiveDocument}->Close; $doc->Close; } } $Word->Close;