A better, and more complete way than the OLE version above, is using Image::ExifTool's ImageInfo. This also identifies the new Office file formats with or without extensions:
#!/usr/bin/perl use strict; use warnings; use Image::ExifTool 'ImageInfo'; my @files = ( 'test.xls', 'test.xlsx', 'test.doc', 'test.docx', 'test.ppt', 'test.pptx', ); for my $filename ( @files ) { my $info = ImageInfo( $filename ); printf( "%-20s = %s\n", $filename, $info->{FileType} ); } __END__ Output: $ perl exif_check.pl test.xls = XLS test.xlsx = XLSX test.doc = DOC test.docx = DOCX test.ppt = PPT test.pptx = PPTX
It might seem a little odd using Image::ExifTool for this but it has a large number of recognised formats.
--
John.
In reply to Re: How to recognize Word and XLS files
by jmcnamara
in thread How to recognize Word and XLS files
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |