c#将datatable表数据导到EXCEL后,如何修改列名
c#将datatable表数据导到EXCEL后,如何修改列名,因为他默认的是数据库里面的列名,现在要修改成中英的 --------------------编程问答-------------------- 我是有这种方法导出的,列名是数据库里的列名,不知道要如何修改掉myExcel.Cells[1, 1] = "本月帐单表";//取得第一行第一列
//Object Date[ds.Tables["CurrentTable"].Rows.Count][ds.Tables["CurrentTable"].Columns.Count];
//生成标题
for (int i = 0; i < ds.Tables["CurrentTable"].Columns.Count; i++)
{
myExcel.Cells[2, i + 1] = ds.Tables["CurrentTable"].Columns[i].Caption;
}
//填充数据
for (int i = 0; i < ds.Tables["CurrentTable"].Rows.Count; i++)
{
for (int j = 0; j < ds.Tables["CurrentTable"].Columns.Count; j++)
{
if (ds.Tables["CurrentTable"].Rows[i][j].GetType() == typeof(System.String))
{
myExcel.Cells[i + 3, j + 1] = "aa" + ds.Tables["CurrentTable"].Rows[i][j].ToString();
}
else
{
myExcel.Cells[i + 3, j + 1] = ds.Tables["CurrentTable"].Rows[i][j].ToString();
}
}
}
this.Cursor = Cursors.Default;
MessageBox.Show("导出成功", "恭喜", MessageBoxButtons.OK, MessageBoxIcon.Information); --------------------编程问答-------------------- 易做图。最垃圾的办法。 --------------------编程问答-------------------- 导出前复制你的dt进行修改。
再导出! --------------------编程问答-------------------- 怎么不在这里修改
//生成标题
for (int i = 0; i < ds.Tables["CurrentTable"].Columns.Count; i++)
{
myExcel.Cells[2, i + 1] = ds.Tables["CurrentTable"].Columns[i].Caption;
} --------------------编程问答-------------------- 你可以在查询时候更改:select col_1 as name_1,col_2 as name_2 from table
或者在dt中更改:datatable1.columns[x].caption=xx --------------------编程问答-------------------- sqlserver中都不可以直接修改的,access也没有吧,能修改的都是自己查出来的表,不是物理中实际存储的表。所有只可以在你查询语句或者修改查询出来后的表的属性 --------------------编程问答-------------------- 导出前复制你的dt进行修改。
要么给列来个别名,不知道可以不。
补充:.NET技术 , C#