private void Excelout(DataTable ds,string path)
{
try
{
long totalCount = ds.Rows.Count;
long rowRead = 0;
float percent = 0;
StreamWriter sw = new StreamWriter(path, false, Encoding.GetEncoding("gb2312"));
StringBuilder sb = new StringBuilder();
for (int k = 0; k < ds.Columns.Count; k++)
{
sb.Append(ds.Columns[k].ColumnName.ToString() + "\t");
}
sb.Append(Environment.NewLine);
for (int i = 0; i < ds.Rows.Count; i++)
{
rowRead++;
percent = ((float)(100 * rowRead)) / totalCount;
textBox1.Text = "正在写入[" + percent.ToString("0.00") + "%]...的数据";
System.Windows.Forms.Application.DoEvents();
DateTime time = DateTime.Parse(ds.Rows[i][0].ToString());
sb.Append(time.ToString("HH:mm:ss") + "\t");
for (int j = 1; j < ds.Columns.Count; j++)
{
//if (ds.Rows[i][j] == null)
//{
// sb.Append("\t");
//}
//else
//{
sb.Append(ds.Rows[i][j].ToString() + "\t");
//}
}
sb.Append(Environment.NewLine);
}
sw.Write(sb.ToString());
sw.Flush();
sw.Close();
MessageBox.Show("已经生成指定Excel文件!");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
转载:http://bbs.csdn.net/topics/390445405