C#实现读写EXCEL数据—附实例导出DATAGRIDVIEW 数据到EXCEL
-
利用C#中的DATAGRIDVIEW 控件操作数据是很方便的 在使用的时候只需要将DATASET中数据导入就OK 了
在实际项目中需要用到的两个DATAGRIDVIEW 操作办法
第一就是导出数据至本地文件(一般为EXCEL )
第二个就是 打印数据
在实际项目中导出数据和打印数据 是非常重要的,因为往往领导都不操作你所开发的软件,他们往往是让员工上交打印的报表就可以了 反正我了解的一些国企单位是这样的, 所以说打印和导出漂亮的报表对你项目成功有很大的帮助
现在分享一个实习DATAGIRDVIEW 到EXCEL 的方法 ,供大家参考和学习使用, 实现打印的方法请查看
方法只需要传入一个DATAGRIDVIEW 参数就可以将数据导出到目的文件中
下载: DataGridView.cs- public void outExcel(DataGridView gridView)
- {
- if (gridView.Rows.Count == 0)
- {
- MessageBox.Show("没有数据可供导出!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- else
- {
- 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.IndexOf(":") < 0) return; //被点了"取消"
- Stream myStream;
- myStream = saveFileDialog.OpenFile();
- StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0));
- string columnTitle = "";
- try
- {
- //写入列标题
- for (int i = 0; i < this.dataGridView1.ColumnCount; i++)
- {
- if (i > 0)
- {
- columnTitle += "\t";
- }
- columnTitle += this.dataGridView1.Columns[i].HeaderText;
- }
- sw.WriteLine(columnTitle);
- //写入列内容
- for (int j = 0; j
- {
- string columnValue = "";
- for (int k = 0; k < this.dataGridView1.Columns.Count; k++)
- {
- if (k > 0)
- {
- columnValue += "\t";
- }
- if (this.dataGridView1.Rows[j].Cells[k].Value == null)
- columnValue += "";
- else
- columnValue += this.dataGridView1.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();
- }
- }
- }
-
我们的说明!
欢迎转载,但请您以链接形式注明本文出处和本站原文链接,下面是链接形式,谢谢合作!
出处链接:Allove of Paradise
原文链接:http://blog.allove.org/archives/c-sharp-excel-datagridvie.html
3 条评论
Leave a Comment




十一月 2nd, 2008 at 7:17 下午
貌似你这里的digg有点问题,用IE进来就卡一段
不过firefox就没问题
原来如此上次我说enter键不能用也是在IE下,firefox一切正常
[回复]
十一月 4th, 2008 at 10:48 上午
你怎么一会C#,一会java的
[回复]
qintao Reply:
十一月 4th, 2008 at 1:22 下午
C#和JAVA 都差不多,看项目大小对语言的要求了,两者都经常用
[回复]