从浏览器导出的CSV在Excel上不能正确显示特殊字符

我想导出一些CSV格式的数据,它是从我的数据库(mongodb)与AJAX调用中获取。

问题是CSV导入后Excel中的特殊字符(例如: é )无法正确显示。

但是,它们正确显示在LibreOffice / Open Office,Google Spreadsheetm和我可以尝试的任何文本编辑器上。

我假设这个文件是用UTF-16编码的,因为它是从javascript生成的。

以下是我在JavaScript中创build导出(这是AngularJS):

  $scope.downloadCityCSV = function() { $scope.csvURL = 'building'; var data = 'email;first name;last name;Email confirmé;city;quantity;date\n'; $scope.campaignData.cityVotes.forEach(function(vote) { var customer = vote.customer; data += customer.email +';' + customer.firstName +';' + customer.lastName +';' + (customer.accountConfirmed?"O":"N") +';' + vote.cityProposal + ';' + vote.quantity + ';' + vote.created + '\n'; }); var blob = new Blob([data], { type : 'text/csv' }); $scope.csvURL = (window.URL || window.webkitURL).createObjectURL(blob); }; 

我做错什么了吗?