public static void ExportExcel(DataGridView DataGridView01)
{
Stream stream = null;
StreamWriter writer = null;
SaveFileDialog dialog = new SaveFileDialog {
Filter = "Execl files (*.xls)|*.xls",
FilterIndex = 0,
RestoreDirectory = true,
CreatePrompt = true,
Title = "Export Excel File To"
};
if (DialogResult.OK == dialog.ShowDialog())
{
try
{
stream = dialog.OpenFile();
writer = new StreamWriter(stream, Encoding.GetEncoding(0));
string str = "";
for (int i = 0; i < DataGridView01.ColumnCount; i++)
{
if (i > 0)
{
str = str + "\t";
}
str = str + DataGridView01.Columns[i].HeaderText;
}
writer.WriteLine(str);
int columnCount = DataGridView01.ColumnCount;
for (int j = 0; j < DataGridView01.Rows.Count; j++)
{
string str2 = "";
for (int k = 0; k < columnCount; k++)
{
if (k > 0)
{
str2 = str2 + "\t";
}
if (k > 0x16)
{
}
if (DataGridView01.Rows[j].Cells[k].Value == null)
{
str2 = str2 ?? "";
}
else
{
str2 = str2 + DataGridView01.Rows[j].Cells[k].Value.ToString();
}
}
writer.WriteLine(str2);
}
writer.Close();
stream.Close();
}
catch (Exception exception)
{
MessageBox.Show("导出文件时出错,文件可能正被打开!\n" + exception.Message);
}
finally
{
writer.Close();
stream.Close();
}
MessageBox.Show("保存成功", "提示", MessageBoxButtons.OK);
}
}

//

如果 ?? 运算符的左操作数非 null,该运算符将返回左操作数,否则返回右操作数。

Winform快速导出的更多相关文章

  1. BOLT.NET 学习笔记(一) 开篇 用.net winform 快速开发 炫酷的界面

    BOLT.NET 学习笔记(一) 开篇 用.net winform 快速开发 炫酷的界面 bolt 基本介绍 Bolt界面引擎是迅雷公司从2009年开始开发的第四代界面库.迅雷7是首个采用该引擎成功开 ...

  2. winform快速开发平台->让有限的资源创造无限的价值!

    最近一直在维护一套自己的快速开发平台. 主要应对针对C/S架构下的项目.然而对winform这快,还真没有看到过相对好的快速开发平台, 何为快速,在博客园逛了了好久, 预览了很多通用权限管理系统. 确 ...

  3. winform快速开发平台 -> 通用权限管理之动态菜单

    这几个月一直忙APP的项目,没来得及更新项目,想想该抽出时间整理一下开发思路,跟大家分享,同时也希望得到宝贵的建议. 先说一下我们的权限管理的的设计思路,首先一个企业信息化管理系统一定会用到权限管理, ...

  4. winform快速开发平台 -> 工作流组件(仿GooFlow)

    对于web方向的工作流,一直在用gooflow对于目前我的winform开发平台却没有较好的工作流组件.  针对目前的项目经验告诉我们.一个工作流控件是很必要的. 当然在winform方面的工作流第三 ...

  5. winform快速开发平台 -> 快速绑定ComboBox数据控件

    通常我们在处理编辑窗体时.往往会遇到数据绑定.例如combobox控件绑定数据字典可能是我们经常用到的.然而在我的winform快速开发平台中我是如何处理这个频繁的操作呢? 首先,我们要绑定combo ...

  6. winform快速开发平台 -> 基础组件之分页控件

    一个项目控件主要由及部分的常用组件,当然本次介绍的是通用分页控件. 处理思想:我们在处理分页过程中主要是针对数据库操作. 一般情况主要是传递一些开始位置,当前页数,和数据总页数以及相关关联的业务逻辑. ...

  7. mysql快速导出数据库ER图和数据字典(附navicat11安装教程及资源)

    ♣ mysql使用navicat11快速导出数据库ER图 ♣ mysql使用navicat11快速导出数据库数据字典 ♣ navicat11 for mysql (这里是mysql5.7.12)专业版 ...

  8. mysql远程快速导出csv格式数据工具

    如需转载,请经本人同意. 之前本人曾经写过一个使用 select ....into outfile原理导出数据的脚本,但该脚本值适用于本地快速导出,并不支持远程服务,故又编写了下面这个支持远程导出的脚 ...

  9. c#使用NPOI快速导出到Excel

    接上篇博文<C#快速导出到excel>:由于此种方法不能导出成.xlsx格式,为解决此问题,本次分享使用NPOI. 参考:https://www.cnblogs.com/lazyneal/ ...

随机推荐

  1. 【微信小程序】实现类似WEB端【返回顶部】功能

    1.原理:利用小程序自带的<scroll-view>组件,该组件的bindScroll和scroll-top方法.属性进行联合操作 2.效果图: 3.wxml: <scroll-vi ...

  2. C++知识整理(在此感谢大牛的整理)

    这篇文章主要讲解如何在C++中使用cin/cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等.通过本文,您可以完全脱离scanf/printf,仅使用cin/c ...

  3. 【LeetCode】25. Reverse Nodes in k-Group (2 solutions)

    Reverse Nodes in k-Group Given a linked list, reverse the nodes of a linked list k at a time and ret ...

  4. Eclipse 选中变量高亮显示设置

  5. SDL的基础知识以及利用SDL播放视频

    原文地址:http://blog.csdn.net/i_scream_/article/details/52714378 此博文相关知识点从雷神的博客以及视频学习,截图也是用了他的课件, 雷神博客地址 ...

  6. 关系数据库元数据处理类(一) 创建MSSQL元数据具体处理类

    public class SqlServer : BaseMetadata { public SqlServer(string connectionString) : base(new DbUtili ...

  7. [Android开发那点破事]解决android.os.NetworkOnMainThreadException

    [Android开发那点破事]解决android.os.NetworkOnMainThreadException 昨天和女朋友换了手机,我的iPhone 4S 换了她得三星I9003.第一感觉就是好卡 ...

  8. 让thinkphp 支持ftp上传到远程,ftp删除

    让thinkphp真正的支持FTP上传.删除. 原创by default7#zbphp.com,如需转载请保留作者信息. /** * This is not a free software, All ...

  9. Python 字典 clear()方法

    描述 Python 字典 clear() 方法用于删除字典内所有元素. 语法 clear() 方法语法: D.clear() 参数 无. 返回值 该方法没有任何返回值. 实例 以下实例展示了 clea ...

  10. unity5, Configurable Joint: Anchor, Connected Anchor, Auto Configure Connected Anchor

    configurable joint加在轮子上,connected body是车身. 这种情况下,Anchor=(0,0,0)表示轮子一端joint锚点取carWheelCenter Connecte ...