从asp表格到数组

我使用asp在客户端的网页中创build了一个表格:

<asp:Table ID="Table1" GridLines="Both" HorizontalAlign="Center" BorderWidth="2" Font-Bold="True" Font-Names="Verdana" Font-Size="8pt" CellPadding="15" CellSpacing="0" runat="server"> </asp:Table> 

使用我创build的button,我使用数组填充表格:

 for (int j=0; j < cells; j++) { TableRow r = new TableRow(); for (int i = 0; i < row+1; i++) { TableCell c = new TableCell(); c.Controls.Add(new LiteralControl (datar[j,i].ToString())); r.Cells.Add(c); } Table1.Rows.Add(r); } 

此代码可以正常工作来填充表格。 现在我必须创build另一个button来将表格发送到Excel。 有谁知道如何做到这一点,或者如何从表中读取数据并发送回另一个数组?

用户必须决定是否要将表中的数据保存为excel,这就是为什么创build第二个button“保存信息”,button一是用于显示信息

尝试这个。 我不能担保100%,因为我没有一个实际的表充满了信息来testing它,但试试这个。

  Table t = new Table(); List<string> cells = new List<string>(); foreach (TableRow r in t.Rows) { foreach (TableCell cell in r.Cells) { cells.Add(cell.ToString()); } } String[] array = cells.ToArray(); 

这假设我们不必在开始将东西放入它之前定义一个固定的数组,所以为了避免这个,我简单地创build了一个数组并将其转换为一个。 这在编程上很慢。 要事先获得数组大小,只需乘以String [TableWidth * TableHeight],您将拥有一个正确大小的固定数组。