I want to read an XLSX file on Windows 10 which is saved in a folder with not Latin characters. Even if I tried different ways and modules, it fails. In my example the folder+filename contains Russian characters. With Latin alphabets everything works fine. The problems seems related to the module Zip::Archive. Any suggestions?
use Spreadsheet::XLSX; use Win32::LongPath; use Win32; use utf8; my $path="Ршзефф\\faoü.xlsx"; #my $path="Ршзефф.xlsx"; #my $path="faoü.xlsx"; #my $MYPath = Win32::GetANSIPathName ($path); my $MYPath = shortpathL ($path); print "$MYPath \n\n"; my $excel = Spreadsheet::XLSX -> new ($MYPath); my $counter=0; foreach my $sheet (@{$excel -> {Worksheet}}) { if ($counter eq 0){#work only on first sheet now $sheet -> {MaxRow} ||= $sheet -> {MinRow}; foreach my $row ($sheet -> {MinRow} .. $sheet +-> {MaxRow}) { $sheet -> {MaxCol} ||= $sheet -> {MinCol}; + foreach my $col ($sheet -> {MinCol} .. $s +heet -> {MaxCol}) { my $cell = $sheet -> {Cells} [$row] [$ +col]; if ($cell) { my $cell_value = ($cell -> {Va +l}); $cell_value =~ s/\n//g; print $cell_value; } print "\t"; } print "\n"; } $counter=1; } }
In reply to Unicode path with Spreadsheet::XLSX by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |