in reply to Spreadsheet::Read Win32::LongPath::openL
It seems to have nothing to do with long paths or non-latin characters:
use strict; use warnings; use feature 'say'; use Spreadsheet::Read; use Spreadsheet::ParseExcel; open my $h, '<', '1.ods'; # this file exists Spreadsheet::ParseExcel-> new-> parse( $h ); #### say 'eof' if eof $h; say 'ok' if defined ReadData( $h );
says 'eof'. But if line marked with '###' is commented out, the output is
Sorry, references as input are not (yet) supported by Spreadsheet::Rea +dSXC at xl.pl line 11.
So, the reason that you can't supply filehandles to Spreadsheet::ReadSXC is because it doesn't support them. And there was no proper error reported for your example, because of this line -- and that line wasn't reached.
Copying to a temporary safely named file can solve it:
use strict; use warnings; use feature 'say'; use utf8; use Spreadsheet::Read; use File::Temp; use Win32::LongPath; my $tmp = File::Temp-> new( SUFFIX => '.ods' )-> filename; copyL 'проверка.ods', $tmp; # this file exists say 'ok' if defined ReadData( $tmp );
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Spreadsheet::Read Win32::LongPath::openL
by Anonymous Monk on Dec 10, 2018 at 09:50 UTC |