changes to support UTF-8 encoding from SpreadSheet::ParseExcel::FmtDefault. You will have to modify line 69 from return pack('C*', unpack('n*', $sTxt)); to following which returns utf-8: return pack('U*', unpack('n*', $sTxt));