DataGridView控件导出到Excel文件

什么也不说了,见代码

 
  
/// <summary>
/// 常用方法,列之间加\t,一行一行输出,此文件其实是csv文件,不过默认可以当成Excel打开。
/// </summary>
/// <remarks>
/// using System.IO;
/// </remarks>
/// <param name="dgv"></param>
private void DataGridViewToExcel(DataGridView dgv)
{
SaveFileDialog dlg
= new SaveFileDialog();
dlg.Filter
= " Execl files (*.xls)|*.xls " ;
dlg.FilterIndex
= 0 ;
dlg.RestoreDirectory
= true ;
dlg.CreatePrompt
= true ;
dlg.Title
= " 保存为Excel文件 " ;
if (dlg.ShowDialog() == DialogResult.OK)
{
Stream myStream;
myStream
= dlg.OpenFile();
StreamWriter sw
= new StreamWriter(myStream, System.Text.Encoding.GetEncoding( - 0 ));
string columnTitle = "" ;
try
{
// 写入列标题
for ( int i = 0 ; i < dgv.ColumnCount; i ++ )
{
if (i > 0 )
{
columnTitle
+= " \t " ;
}
columnTitle
+= dgv.Columns[i].HeaderText;
}
sw.WriteLine(columnTitle);
// 写入列内容
for ( int j = 0 ; j < dgv.Rows.Count; j ++ )
{
string columnValue = "" ;
for ( int k = 0 ; k < dgv.Columns.Count; k ++ )
{
if (k > 0 )
{
columnValue
+= " \t " ;
}
if (dgv.Rows[j].Cells[k].Value == null )
columnValue
+= "" ;
else
columnValue
+= dgv.Rows[j].Cells[k].Value.ToString().Trim();
}
sw.WriteLine(columnValue);
}
sw.Close();
myStream.Close();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
finally
{
sw.Close();
myStream.Close();
}
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值