请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

pele

初级会员

13

主题

33

帖子

220

积分

初级会员

积分
220
pele
初级会员   /  发表于:2025-3-5 10:39  /   查看:66  /  回复:5
1金币

您好:
    现有类似如下json数据:
    var jsonArray = [
         {row:1,column:1,value:'a'},
         {row:1,column:2,value:100},
         {row:1,column:3,value:'F'},

         {row:2,column:1,value:'b'},
         {row:2,column:2,value:200},
         {row:3,column:3,value:'M'}

   ];

   如何能把以上数据一次加载到指定worksheet中。

   实际应用中上述数据量可能达十万以上级别。不想使用循环一条条设置单元格值。请问有什么好的解决方法?
   谢谢!

最佳答案

查看完整内容

您好!根据您提供的数据内部结构来看,最直观的方式就是遍历对每个单元格设置数据,可以在循环处理语句前后分别加上Worksheet:suspendPaint()和Worksheet:resumePaint()辅助优化性能。 此外,也可以使用Table级别或sheet级别数据绑定,性能更优。sheet级别数据绑定将字段名称填充在列标题中,如果您不希望如此,可以使用Table级别数据绑定。具体地,需要在sheet中创建一个Table,对Table列设置绑定信息(TableColumn),同时需 ...

5 个回复

倒序浏览
最佳答案
最佳答案
Wilson.Zhang
超级版主   /  发表于:2025-3-5 10:39:57
来自 2#
您好!根据您提供的数据内部结构来看,最直观的方式就是遍历对每个单元格设置数据,可以在循环处理语句前后分别加上Worksheet:suspendPaint()Worksheet:resumePaint()辅助优化性能。

此外,也可以使用Table级别或sheet级别数据绑定,性能更优。sheet级别数据绑定将字段名称填充在列标题中,如果您不希望如此,可以使用Table级别数据绑定。具体地,需要在sheet中创建一个Table,对Table列设置绑定信息(TableColumn),同时需要对Table设置绑定路径(Table:bindingPath())。不过需要您调整下json数据内部的表示方式,您的json数据中的row和col属性对此没有影响,但是所有需要绑定的数据目前对应的属性名称均为value,对每列数据适当调整该属性名称以区别,因为该名称是Table列绑定的依据。

您可以参考官网教程了解数据绑定详情:
Table数据绑定
Sheet数据绑定
回复 使用道具 举报
pele
初级会员   /  发表于:2025-3-5 16:02:45
3#
Wilson.Zhang 发表于 2025-3-5 12:27
您好!根据您提供的数据内部结构来看,最直观的方式就是遍历对每个单元格设置数据,可以在循环处理语句前后 ...

谢谢答复!
  但实际应用中不知道需要绑定的列属性。只有行、列、值这三个属性。有没有类似于workSheet的setArray这种功能,可以批量对单元格进行设置。
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2025-3-6 09:01:45
4#
pele 发表于 2025-3-5 16:02
谢谢答复!
  但实际应用中不知道需要绑定的列属性。只有行、列、值这三个属性。有没有类似于workSheet ...

除了Workshee:setArray()外,还能支持批量填充单元格的功能就是数据绑定了。但是,您当前的数据结构也不适用于Worksheet:setArray(),Worksheet:setArray()的参数是是一个数组,其中不需要包括被填充数据的属性名称。如果您使用Worksheet:setArray()也需要调整当前的数据结构。

考虑到您的大规模数据量,建议您使用数据绑定特性,在绑定前对数据源稍做处理,将不同行中同列数据的value属性名称修改为相同的属性名称,以区别每列并据此设置绑定路径。

您可以结合实际场景评估下。
回复 使用道具 举报
pele
初级会员   /  发表于:2025-3-6 14:18:47
5#
Wilson.Zhang 发表于 2025-3-6 09:01
除了Workshee:setArray()外,还能支持批量填充单元格的功能就是数据绑定了。但是,您当前的数据结构也不 ...

明白了,谢谢!
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2025-3-6 17:13:27
6#
pele 发表于 2025-3-6 14:18
明白了,谢谢!

不客气,那就结贴了。如有新问题,欢迎发新帖沟通。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部