数据 导出到Word 、excel
来源:互联网 发布:知乎live赚钱如何分配 编辑:程序博客网 时间:2024/05/17 07:48
#region 导出当前页DataGridView中的数据到Excel中,用流保存成xls文件. 这种方法比较好,不用引用Excel组件
/// <summary>
/// 导出当前页DataGridView中的数据到EXcel中
/// </summary>
/// <param name="dataGridView">dataGridView</param>
/// <param name="progreesBar">progreesBar</param>
public void ExportTOExcelWithoutWidget(DataGridView gridView, ProgressBar progreesBar, SaveFileDialog saveFileDialog) //另存新档按钮 导出成Excel
{
if (gridView.Rows.Count == 0)
{
MessageBox.Show("没有数据可供导出!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
else
{
saveFileDialog.Filter = "Execl files (*.xls)|*.xls";
saveFileDialog.FilterIndex = 0;
saveFileDialog.RestoreDirectory = true;
saveFileDialog.CreatePrompt = true;
saveFileDialog.Title = "导出文件保存路径";
saveFileDialog.ShowDialog();
progreesBar.Visible = true;
Stream myStream;
myStream = saveFileDialog.OpenFile();
//StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312"));
StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding(-0));
string str = "";
try
{
//写标题
for (int i = 0; i < gridView.ColumnCount; i++)
{
if (i > 0)
{
str += "/t";
}
str += gridView.Columns[i].HeaderText;
}
sw.WriteLine(str);
//写内容
for (int j = 0; j < gridView.Rows.Count-1; j++)
{
string tempStr = "";
for (int k = 0; k < gridView.Columns.Count; k++)
{
if (k > 0)
{
tempStr += "/t";
}
tempStr += gridView.Rows[j].Cells[k].Value.ToString();
}
sw.WriteLine(tempStr);
progreesBar.Value += 100 / gridView.RowCount;
}
sw.Close();
myStream.Close();
progreesBar.Value = 100;
MessageBox.Show("数据已经成功导出到:" + saveFileDialog.FileName.ToString(), "导出完成", MessageBoxButtons.OK, MessageBoxIcon.Information);
progreesBar.Value = 0;
progreesBar.Visible = false;
}
catch (Exception e)
{
MessageBox.Show(e.Message, "友情提示", MessageBoxButtons.OK);
}
finally
{
sw.Close();
myStream.Close();
}
}
}
#endregion
////////////////////////////////////////////////////////////////////
#region 导出当前页DataGridView中的数据到Word中
public void ExportDataGridViewToWord(DataGridView srcDgv, ProgressBar progreesBar, SaveFileDialog sfile)
{
if (srcDgv.Rows.Count == 0)
{
MessageBox.Show("没有数据可供导出!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
else
{
sfile.AddExtension = true;
sfile.DefaultExt = ".doc";
sfile.Filter = "(*.doc)|*.doc";
if (sfile.ShowDialog() == DialogResult.OK)
{
progreesBar.Visible = true;
object path = sfile.FileName;
Object none = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document document = wordApp.Documents.Add(ref none, ref none, ref none, ref none);
//建立表格
Microsoft.Office.Interop.Word.Table table = document.Tables.Add(document.Paragraphs.Last.Range, srcDgv.Rows.Count, srcDgv.Columns.Count, ref none, ref none);
try
{
for (int i = 0; i < srcDgv.Columns.Count; i++)//设置标题
{
table.Cell(0, i + 1).Range.Text = srcDgv.Columns[i].HeaderText;
}
for (int i = 1; i < srcDgv.Rows.Count; i++)//填充数据
{
for (int j = 0; j < srcDgv.Columns.Count; j++)
{
table.Cell(i + 1, j + 1).Range.Text = srcDgv[j, i - 1].Value.ToString();
}
progreesBar.Value += 100 / srcDgv.RowCount;
}
document.SaveAs(ref path, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none, ref none);
document.Close(ref none, ref none, ref none);
progreesBar.Value = 100;
MessageBox.Show("数据已经成功导出到:" + sfile.FileName.ToString(), "导出完成", MessageBoxButtons.OK, MessageBoxIcon.Information);
progreesBar.Value = 0;
progreesBar.Visible = false;
}
catch(Exception e)
{
MessageBox.Show(e.Message, "友情提示", MessageBoxButtons.OK);
}
finally
{
wordApp.Quit(ref none, ref none, ref none);
}
}
}
}
#endregion
- 数据 导出到Word 、excel
- 导出数据到Excel/Word
- GridView数据导出到Word/Excel中
- Java数据导出到excel和word
- js导出表格数据到word、excel
- asp.net_GridView导出数据到Excel/Word
- 从数据库导出数据到word、excel、.txt
- 从数据库导出数据到word、excel、.txt
- 从数据库导出数据到word、excel、.txt
- 从数据库导出数据到word、excel、.txt
- 从数据库导出数据到word、excel、.txt
- 从数据库导出数据到word、excel、.txt- -
- 从数据库导出数据到word、excel、.txt
- 从数据库导出数据到word、excel、.txt
- 将DataGrid数据导出到Excel和Word文档
- 页面数据导出到Excel或者Word方法
- 将GridView中的数据导出到Excel,Word,Html
- 从数据库导出数据到word、excel、.txt(一)
- 大话调试器(下)
- asp.net mvc 2.0部署
- 软件设计师(中级)复习方案
- 无可奈何
- win 7命令行大全
- 数据 导出到Word 、excel
- wml下的一个错误
- 图-154飞机简直就是杀人凶器
- 懒羊羊经典语录
- 大三下参与中软国际实训多人在线网络游戏Carcassonne项目
- 未来五年程序员需要掌握的10项技能
- 中国足球的假
- 老主板,大硬盘,双系统
- windowsXP命令行大全