小菜鸡xx 发表于 2023-11-9 21:17:39

spreadjs 导出csv文件格式问题

本帖最后由 Richard.Huang 于 2024-2-23 12:18 编辑

产品:SpreadJS
版本:V16.2.4
问题编号:SJS-21196
LastReview:2024/2/23
该问题已经在V17.0.0之后修复,您可以通过升级版本来解决该问题

1,如何导出csv文件格式
2,导出乱码,列头没有导出

Richard.Huang 发表于 2023-11-10 10:00:20

您好,根据您的描述来看,似乎是编码格式和解码格式不统一导致的问题,Excel默认打开是ANSI格式。您可以将导出时的编码设置为ANSI。
您可以参考该学习指南来实现:https://demo.grapecity.com.cn/sp ... mat/overview/purejs

如果仍然存在问题,建议您将该乱码格式的问题提供一份可供我们复现的文件,方便我们为您进行排查。

小菜鸡xx 发表于 2023-11-10 11:11:34

Richard.Huang 发表于 2023-11-10 10:00
您好,根据您的描述来看,似乎是编码格式和解码格式不统一导致的问题,Excel默认打开是ANSI格式。您可以将 ...

就是按照你们这个案例去写的你们怎么写我就怎么写的   还是乱码。列头怎么导出啊

Richard.Huang 发表于 2023-11-10 14:10:12

小菜鸡xx 发表于 2023-11-10 11:11
就是按照你们这个案例去写的你们怎么写我就怎么写的   还是乱码。列头怎么导出啊

您好,我直接使用官网的例子进行测试,成功导出了用Excel软件打开不乱码的csv文件,具体效果如下所示,如果您仍然存在问题,建议提供一份可供我们复现的Demo,方便我们更好地为您解决问题:


对于您的第二个问题,想要将列头也导出,这个需要您自己进行开发。咱们可以参考这篇帖子来实现:https://gcdn.grapecity.com.cn/showtopic-187172-1-1.html

小菜鸡xx 发表于 2023-11-10 14:27:22

Richard.Huang 发表于 2023-11-10 14:10
您好,我直接使用官网的例子进行测试,成功导出了用Excel软件打开不乱码的csv文件,具体效果如下所示,如 ...

var sheet = spread.getActiveSheet();
      sheet.addRows(0, 1);
      sheet.setRowVisible(0, false, GC.Spread.Sheets.SheetArea.viewport);
      for (var col = 0; col < sheet.getColumnCount(); col++) {
      sheet.setValue(0, col, sheet.getText(0, col, GC.Spread.Sheets.SheetArea.colHeader));
      }
      var fileName = 'export.csv';
      let options = {
      columnHeadersAsFrozenRows: false,
      encoding: 'UTF-8',
      rowDelimiter: '\r\n',
      columnDelimiter: ',',
      sheetIndex: 0
      };

      options.fileType = GC.Spread.Sheets.FileType.csv;
      spread.export(
      function (blob) {
          saveAs(blob, fileName);
      },
      function () {},
      options
      );
      sheet.deleteRows(0, 1);

小菜鸡xx 发表于 2023-11-10 14:27:52

小菜鸡xx 发表于 2023-11-10 14:27
var sheet = spread.getActiveSheet();
      sheet.addRows(0, 1);
      sheet.setRowVisible(0, fa ...

你在本地的vue项目中试试

Richard.Huang 发表于 2023-11-10 17:53:51

小菜鸡xx 发表于 2023-11-10 14:27
你在本地的vue项目中试试

您好,我了解了您的问题所在,对于CSV的乱码问题,咱们不能直接用Excel打开,根因还是咱们所说的编码和解码没有对上的问题,建议通过Excel的CSV打开功能来打开文件。您可以参考这篇技术博客来理解该问题所在:https://gcdn.grapecity.com.cn/showtopic-196565-1-2.html

小菜鸡xx 发表于 2023-11-13 09:51:59

Richard.Huang 发表于 2023-11-10 17:53
您好,我了解了您的问题所在,对于CSV的乱码问题,咱们不能直接用Excel打开,根因还是咱们所说的编码和解 ...

怎么设置正确的编码格式,我给每个客户建议通过Excel的csv打开功能?

Richard.Huang 发表于 2023-11-13 11:26:15

小菜鸡xx 发表于 2023-11-13 09:51
怎么设置正确的编码格式,我给每个客户建议通过Excel的csv打开功能?

您好,是的为了保证用户能够准确无误解决该乱码问题,建议用户通过Excel的指定编码功能来解决

小菜鸡xx 发表于 2023-11-13 11:34:28

Richard.Huang 发表于 2023-11-13 11:26
您好,是的为了保证用户能够准确无误解决该乱码问题,建议用户通过Excel的指定编码功能来解决

代码层面有什么好的方法规避这个问题?建议人不听啊
页: [1] 2
查看完整版本: spreadjs 导出csv文件格式问题