有没有直接获取Workbook的Row整行(或者一行的单元格范围)对象数组的办法,就像DataRow.ItemArray一样

我想把数据用到一些自定义的方法中。现在只能做行循环和列循环的方式来获取每个单元格的数据。有没有更高效一点的办法,比如循环行,然后获取这些行的数据?

@hudaming
你先用cells api来处理,我建议用lightcells api来搜集数据

遍历的话参考这个文档

直接用GridDesktop 也可以,但是内存占用会比较大,因为实际上GridDesktop的存储结构是对cells的额外包装

  IEnumerator ri = this.gridDesktop1.Worksheets[0].Cells.RowEnumerator;

            while (ri.MoveNext())
            {
                IEnumerator ci = ((GridRow)ri.Current).GetEnumerator();
                while (ci.MoveNext())
                {
                    GridCell cell = ((GridCell)ci.Current) ;
                    Console.WriteLine(cell.Row+" "+cell.Column+" "+cell.StringValue);
                }
            }

@peter.zhou 我测试了,和直接用两个for循环用时是一样的.先这样吧,可能这已经是目前的最佳解决方案了.

@hudaming
谢谢你的理解,我们也会想法提升效率。