我使用asp:
在客户端的网页中创建了一个表<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>
使用我创建的按钮,我使用数组填充表格:
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);
}
此代码可以很好地填充表格。现在我必须创建另一个按钮将表发送到Excel。有谁知道如何做到这一点,或者如何从表中读取数据并发送回另一个数组?
用户必须决定是否要将表中的数据保存到Excel中,这就是创建第二个按钮“保存信息”的原因,按钮一是用于显示信息
答案 0 :(得分:1)
试试这个。我不能保证100%这样做因为我没有一个实际的表格来填充信息来测试它,但无论如何都要试试这个。
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();
这假设我们在开始将东西放入其中之前不必定义固定数组,所以为了避免这种情况,我只是创建了一个数组并将列表转换为一个数组。这在程序上是缓慢的。要获得前面的数组大小,只需将String [TableWidth * TableHeight]相乘即可得到正确大小的固定数组。