把datatale中指定row存到另一datatable中,第一行为空,最后一行无

人生无悔 2008-08-26 10:59:15
部分代码:
Excel.Application myexcel = new Excel.ApplicationClass();
Excel.Workbook mybook = myexcel.Workbooks.Add(true);
int row_cnt = dt.Rows.Count;
int col_cnt = dt.Columns.Count;
for (int i = 1; i < (Math.Truncate((double)(row_cnt / Convert.ToInt32(tb1.Text))) + 2); i++)
{
if (i == 1)
{
System.Data.DataTable dts = new System.Data.DataTable();
DataColumnCollection dcc = dt.Columns;
foreach (DataColumn dc in dcc)
{
dts.Columns.Add(dc.ColumnName);
}
Excel.Worksheet mysheet = (Excel.Worksheet)mybook.Sheets[1];
mysheet.Name = Convert.ToString(tb2.Text + 1);
for (int row = 0; row < ((row_cnt < Convert.ToInt32(tb1.Text)) ? row_cnt: Convert.ToInt32(tb1.Text)); row++)
{
try
{
System.Data.DataRow dr = dts.NewRow();
foreach (DataColumn dc in dt.Columns)
{
dr.Table.Columns[dc.ColumnName].DefaultValue = dt.Rows[row + Convert.ToInt32(tb1.Text) * (i - 1)].ItemArray.GetValue(Convert.ToInt32(dc.Ordinal));
}
dts.Rows.Add(dr);
}
catch(Exception err)
{
MessageBox.Show(err.Message);
return;
}
}
dt为原表,第一次执行foreach时,dr为空,但defaultvalue有值。最后一行值没有显示到新建的datatable。



刚审请,没可用分,请朋友们帮个忙,非常感谢!
...全文
133 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧