1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
//author: walker
//date: 2014-01-06
//function: 将dataGridView导出到csv
private
bool
dataGridViewToCSV(DataGridView dataGridView)
{
if
(dataGridView.Rows.Count == 0)
{
MessageBox.Show(
"没有数据可导出!"
,
"提示"
, MessageBoxButtons.OK, MessageBoxIcon.Information);
return
false
;
}
SaveFileDialog saveFileDialog =
new
SaveFileDialog();
saveFileDialog.Filter =
"CSV files (*.csv)|*.csv"
;
saveFileDialog.FilterIndex = 0;
saveFileDialog.RestoreDirectory =
true
;
saveFileDialog.CreatePrompt =
true
;
saveFileDialog.FileName =
null
;
saveFileDialog.Title =
"保存"
;
if
(saveFileDialog.ShowDialog() == DialogResult.OK)
{
Stream stream = saveFileDialog.OpenFile();
StreamWriter sw =
new
StreamWriter(stream, System.Text.Encoding.GetEncoding(-0));
string
strLine =
""
;
try
{
//表头
for
(
int
i = 0; i < dataGridView.ColumnCount; i++)
{
if
(i > 0)
strLine +=
","
;
strLine += dataGridView.Columns[i].HeaderText;
}
strLine.Remove(strLine.Length - 1);
sw.WriteLine(strLine);
strLine =
""
;
//表的内容
for
(
int
j = 0; j < dataGridView.Rows.Count; j++)
{
strLine =
""
;
int
colCount = dataGridView.Columns.Count;
for
(
int
k = 0; k < colCount; k++)
{
if
(k > 0 && k < colCount)
strLine +=
","
;
if
(dataGridView.Rows[j].Cells[k].Value ==
null
)
strLine +=
""
;
else
{
string
cell = dataGridView.Rows[j].Cells[k].Value.ToString().Trim();
//防止里面含有特殊符号
cell = cell.Replace(
"\""
,
"\"\""
);
cell =
"\""
+ cell +
"\""
;
strLine += cell;
}
}
sw.WriteLine(strLine);
}
sw.Close();
stream.Close();
MessageBox.Show(
"数据被导出到:"
+ saveFileDialog.FileName.ToString(),
"导出完毕"
, MessageBoxButtons.OK, MessageBoxIcon.Information);
}
catch
(Exception ex)
{
MessageBox.Show(ex.Message,
"导出错误"
, MessageBoxButtons.OK, MessageBoxIcon.Information);
return
false
;
}
}
return
true
;
}
|
相关阅读:
1、关于特殊符号和分隔符。
*** walker ***
本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1348926如需转载请自行联系原作者
RQSLT