iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >将dataGridView内容导出到Excel文件
  • 187
分享到

将dataGridView内容导出到Excel文件

2023-06-03 09:06:36 187人浏览 薄情痞子
摘要

这里提供了两种将DataGridView内容导出到excel文件的方法。方法1:/// <summary>/// 在没有安装Excel的情况下,将DataGridView数据导出到Excel/// </summary>

这里提供了两种将DataGridView内容导出到excel文件的方法。

方法1:

/// <summary>/// 在没有安装Excel的情况下,将DataGridView数据导出到Excel/// </summary>private void ExportToExcel(){    SaveFileDialog saveFileDialog = new SaveFileDialog();    saveFileDialog.Filter = "Execl files (*.xls)|*.xls";    saveFileDialog.FilterIndex = 0;    saveFileDialog.RestoreDirectory = true;    saveFileDialog.CreatePrompt = true;    saveFileDialog.Title = "导出到Excel";    saveFileDialog.ShowDialog();    if (saveFileDialog.FileName == "")    {        return;    }    Stream myStream = saveFileDialog.OpenFile();    StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0));    string str = "";    try    {        for (int i = 0; i < dataGridView1.ColumnCount; i++)        {            if (dataGridView1.Columns[i].Visible == false || dataGridView1.Columns[i].DataPropertyName == "")            {                continue;            }            str += dataGridView1.Columns[i].HeaderText;            str += "\t";        }        sw.WriteLine(str);        for (int j = 0; j < dataGridView1.Rows.Count - 1; j++)        {            string strTemp = "";            for (int k = 0; k < dataGridView1.Columns.Count; k++)            {                if (dataGridView1.Columns[k].Visible == false || dataGridView1.Columns[k].DataPropertyName == "")                {                    continue;                }                object obj = dataGridView1.Rows[j].Cells[k].Value;                if (obj != null)                {                    strTemp += dataGridView1.Rows[j].Cells[k].Value.ToString();                }                else                {                    strTemp = "";                }                strTemp += "\t";            }            sw.WriteLine(strTemp);        }        sw.Close();        myStream.Close();        MessageBox.Show("成功导出到Excel文件:\n" + saveFileDialog.FileName);    }    catch (Exception ex)    {        MessageBox.Show(ex.ToString());    }    finally    {        sw.Close();        myStream.Close();    }}

方法2:

/// <summary>/// 将DataGrirdView数据导出到Excel/// 需要引用Microsoft.Office.Interop.Excel.dll模块/// </summary>/// <param name="dgv"></param>/// <param name="bShowExcel"></param>/// <returns></returns>private bool DataGridviewShowToExcel(DataGridView dgv, bool bShowExcel){    if (dgv.Rows.Count == 0)    {        return false;    }    //建立Excel对象          Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();    excel.Application.Workbooks.Add(true);    excel.Visible = bShowExcel;    //生成字段名称        int k = 0;    for (int i = 0; i < dgv.ColumnCount; i++)    {        if (dgv.Columns[i].Visible == false || dataGridView1.Columns[i].DataPropertyName == "")        {            k++;            continue;        }        excel.Cells[1, i + 1 - k] = dgv.Columns[i].HeaderText;    }    //填充数据         for (int i = 0; i < dgv.RowCount; i++)    {        k = 0;        for (int j = 0; j < dgv.ColumnCount; j++)        {            if (dgv.Columns[j].Visible == false || dataGridView1.Columns[j].DataPropertyName == "")            {                k++;                continue;            }            excel.Cells[i + 2, j + 1 - k] = dgv[j, i].Value.ToString();        }    }    return true;}

--结束END--

本文标题: 将dataGridView内容导出到Excel文件

本文链接: https://www.lsjlt.com/news/233844.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作