导出每个单元格具有自动宽度的CSV

问题描述 投票:1回答:1

我在设置自动宽度时遇到问题。我想将所有文本放入一个单元格中,在其中无需单击任何内容即可查看所有值。我导出的CSV当前如下所示:

Exported CSV

这就是我想要实现的:

Achieve state

到目前为止,我所做的是转换此数据数组(stringified

[
  ["Play Date","Round","Result Virtual","Result Data"],
  ["=\"2020-03-04 00:48:00\"","16","\"[LEFT, LINE3, EVEN]\"","\"[LEFT, LINE3, EVEN]\""],
  ["=\"2020-03-04 00:51:00\"","17","\"[LEFT, LINE4, ODD]\"","\"[LEFT, LINE4, ODD]\""],
  ["=\"2020-03-04 00:54:00\"","18","\"[LEFT, LINE3, EVEN]\"","\"[LEFT, LINE3, EVEN]\""],
  ["=\"2020-03-04 00:57:00\"","19","\"[RIGHT, LINE4, EVEN]\"","\"[RIGHT, LINE4, EVEN]\""]
]

转换为CSV格式,然后下载:

data.forEach(rowItem => {
  rowItem.forEach(colItem => {
    csvString += `${colItem},`
  })
  csvString += '\r\n'
})

csvString = 'data:application/csv,' + encodeURIComponent(csvString)
var x = document.createElement('A')
x.setAttribute('href', csvString)
x.setAttribute('download', `${new Date()}.csv`)
document.body.appendChild(x)
x.click()

javascript excel csv export-to-csv export-to-excel
1个回答
0
投票

CSV,顾名思义,仅是文本。以逗号分隔。它仅有的是一个二维数据矩阵。您要合并的内容是在特定应用程序中合并有关这些数据的显示格式的一些数据(看起来很出色)。恐怕在这些应用程序中,如果不添加与格式化实际数据表示形式有关的数据,这是不可能的。这就是为什么存在特定于应用程序的格式,例如.xls

© www.soinside.com 2019 - 2024. All rights reserved.