diff --git a/server/src/main/resources/web/csv.ftl b/server/src/main/resources/web/csv.ftl index d41dd31a..d3a3a59b 100644 --- a/server/src/main/resources/web/csv.ftl +++ b/server/src/main/resources/web/csv.ftl @@ -9,7 +9,6 @@ - @@ -55,12 +54,20 @@ reader.onload = function(e) { data = new Uint8Array(data); let f = isUTF8(data); if (f) { - var str = cptable.utils.decode(65001, data); - process_wb(XLSX.read(str, { type: "string" })); - } else { - var str = cptable.utils.decode(936, data); + try { + var str = cptable.utils.decode(65001, data); process_wb(XLSX.read(str, { type: "string" })); - } + } catch (error) { + process_wb(XLSX.read(data)); + } + } else { + try { + var str = cptable.utils.decode(936, data); + process_wb(XLSX.read(str, { type: "string" })); + } catch (error) { + process_wb(XLSX.read(data)); + } + } }; reader.readAsArrayBuffer(file); }