gridview数据导出到word和excel以及excel的导入
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using ProductSystem.Sqlserver;
using Microsoft.Office;
using Microsoft.Office.Interop;
using System.Data.OleDb;
using System.Data;
namespace WordExcelTest
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string sql_select_pingjia = "select * from PingJia";
List<pingjiaBLL> groupinfoList = new List<pingjiaBLL>();
using (SqlDataReader rdr = SqlHelper.ExecuteReader(sql_select_pingjia))
{
while (rdr.Read())
{
pingjiaBLL gf = new pingjiaBLL();
// gf.groupId = int.Parse(rdr["groupId"].ToString());
// gf.groupName = (rdr["groupName"]).ToString();
gf.ID = int.Parse(rdr["ID"].ToString());
gf.CompanyName = rdr["CompanyName"].ToString();
gf.Construe = rdr["Construe"].ToString();
gf.Specimen = rdr["Specimen"].ToString();
gf.Demonstrate = rdr["Demonstrate"].ToString();
gf.EngineeringSupport = rdr["EngineeringSupport"].ToString();
gf.DeliveryCircumstance = rdr["DeliveryCircumstance"].ToString();
groupinfoList.Add(gf);
}
}
this.db_gridview.DataSource = groupinfoList;
this.db_gridview.DataBind();
Response.Write(db_gridview.Columns.Count);
Response.Write(db_gridview.Rows.Count);
}
/// <summary>
/// 导出到excel
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btExcel_Click(object sender, EventArgs e)
{
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
excel.Application.Workbooks.Add(true);
excel.Visible = true;
//将第一行标题导入
for (int i = 0; i < this.db_gridview.Rows[0].Cells.Count; i++)
{
excel.Cells[1, i + 1] = this.db_gridview.HeaderRow.Cells[i].Text;
}
//从第二行开始每列导入数据
//excel.Cells[i,j]标识excel中sheet的i行j列
for (int i = 0; i < this.db_gridview.Rows.Count - 1; i++)
{
for (int j = 0; j < this.db_gridview.Rows[0].Cells.Count; j++)
{
excel.Cells[i + 2, j + 1] = this.db_gridview.Rows[i].Cells[j].Text.ToString();
}
}
}
/// <summary>
/// 导出到word
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btWord_Click(object sender, EventArgs e)
{
Microsoft.Office.Interop.Word.Document mydoc = new Microsoft.Office.Interop.Word.Document();
Microsoft.Office.Interop.Word.Table mytable;
Microsoft.Office.Interop.Word.Selection mysel;
Object myobj;
//建立Word对象
Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();
myobj = System.Reflection.Missing.Value;
mydoc = word.Documents.Add(ref myobj, ref myobj, ref myobj, ref myobj);
word.Visible = true;
mydoc.Select();
mysel = word.Selection;
//将数据生成Word表格文件
mytable = mydoc.Tables.Add(mysel.Range, this.db_gridview.Rows.Count, this.db_gridview.Rows[0].Cells.Count, ref myobj, ref myobj);
//设置列宽
mytable.Columns.SetWidth(30, Microsoft.Office.Interop.Word.WdRulerStyle.wdAdjustNone);
//输出列标题数据
for (int i = 0; i < this.db_gridview.Rows[0].Cells.Count; i++)
{
mytable.Cell(1, i + 1).Range.InsertAfter(this.db_gridview.HeaderRow.Cells[i].Text);
}
//输出控件中的记录
for (int i = 0; i < db_gridview.Rows.Count - 1; i++)
{
for (int j = 0; j < this.db_gridview.Rows[0].Cells.Count; j++)
{
mytable.Cell(i + 2, j + 1).Range.InsertAfter(this.db_gridview.Rows[i].Cells[j].Text.ToString());
}
}
}
/// <summary>
/// 导入excel到gridview
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void bt_importExcel_Click(object sender, EventArgs e)
{
string xlsFilePath = "C:\\Users\\HUXU\\Desktop\\Sheet1.xlsx";
string connectionString;
connectionString = "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" + xlsFilePath + ";Extended Properties='Excel 8.0;HDR=False;IMEX=1'";
OleDbConnection conn = new OleDbConnection(connectionString);
String strQuery = "SELECT * FROM [Sheet1$]"; //可以更改工作表名称
OleDbDataAdapter da = new OleDbDataAdapter(strQuery, conn);
DataSet ds = new DataSet();
da.Fill(ds, "Sheet1");
DataTable dt = ds.Tables[0];
db_gridview.DataSource = null;
db_gridview.DataSource = dt;
db_gridview.DataBind();
conn.Close();
}
}
}
gridview数据导出到word和excel以及excel的导入的更多相关文章
- 在ASP.NET中将GridView数据导出到Word、Excel
在ASP.NET中将GridView数据导出到Word.Excel asp.net,导出gridview数据到Word,Excel,PDF #region Export to Word, Exce ...
- 【asp.net】将GridView数据导出Excel
概要: 中午睡了一会,醒来的时候看到老师叫我去办公室,需求是这样的,把excel表中的每个同学,判断图片目录中是否有对应的照片(图片的名字用的学号或身份证号码) 没有对应图片的学生记录,存入自己的数据 ...
- Gridview数据导出到ExcelWord 防止出现乱码
1.页面中添加绿色字体代码<%@ Page Language="C#" CodeFile="111.aspx.cs" Inherits="111 ...
- C# DevExpress 的gridControl或gridView数据导出失败解决方法
来自:http://blog.csdn.net/lybwwp/article/details/8049464 谢谢 在使用DevExpress 的GridPanel控件的时候出现了一个莫名其妙的现象, ...
- ASP.NET中GridView数据导出到Excel
/// <summary> /// 导出按钮 /// </summary> /// <param name="sender"></para ...
- Gridview数据导出excel时身份证号码为科学计数法的解决方法
if (e.Row.RowType == DataControlRowType.DataRow) { string id = this.GridView1.DataKeys[e.Row.RowInde ...
- 使用NPOI将数据导出为word格式里的table
开发环境:VS2013+MySQL5.5+EF6+NPOI2.0.6 格式:WinForm+CodeFirst PS:vs2013的CodeFirst很方便了啊 CodeFirst方式就不再赘述了. ...
- js导出到word、json、excel、csv
tableExport.js ///*The MIT License (MIT) //Copyright (c) 2014 https://github.com/kayalshri/ //Permis ...
- 数据导出生成word附件使用POI的XWPFTemplate对象
比较常用的实现Java导入.导出Excel的技术有两种Jakarta POI和Java Excel.Jakarta POI 是一套用于访问微软格式文档的Java API.Jakarta POI有很多组 ...
随机推荐
- javascript中的函数返回值(return)
有些情况,我们希望获取到函数的执行结果,也就是我们需要在函数以外的地方处理执行结果,而不是在函数内部处理.这时我们就需要为函数设一个返回值,也就是return,即函数执行完毕以后返回的结果. 若在函数 ...
- 实现RecycleView动态使列表item可以点击或不可点击切换
效果 这里讲的是第二个button跳转的Activity,这里和上一篇不同之处在于可以item点击.item子控件点击 继承BaseAdapter 同样也要继承BaseAdapter public c ...
- user.table.column, table.column 或列说明无效
Oracle统计采用别名出错(user.table.column, table.column 或列说明无效) >>>>>>>>>>>& ...
- extSourceStat_7Day_Orders.php
<?php /** Log文件格式2012/7/4 列号 字段含义 取值 ------------------------------------------------------------ ...
- linux下查找文件
1,find 经常在linux下工作,总要查找一些文件,于是就搜索的学习了一下 find 指定目录 指定条件 指定动作 举例:find . -name "my*" 查找 当前目录下 ...
- 单点登录SSO原理
最近接触了一点单点登录的知识,有一点理解,记录一下.有些问题并没有找到完美的解决方法,还需要找点已有框架来看看. 欢迎留言探讨. 1 概念 1.1 概念及理解 有一个网上广为流传的 ...
- Apache Shiro 快速入门教程,shiro 基础教程 (这篇文章非常好)
第一部分 什么是Apache Shiro 1.什么是 apache shiro : Apache Shiro是一个功能强大且易于使用的Java安全框架,提供了认证,授权,加密,和会话管理 ...
- iOS相关,过年回来电脑上的证书都失效了,解决方法。
今天发了个问题,就是关于电脑上的证书都失效的问题,就这个问题的解决方法如下:https://segmentfault.com/q/1010000004433963 1,按照链接下载,https://d ...
- 哈弗曼实现(C++)
HuffmanCode.h #ifndef HUFFMANCODE_H #define HUFFMANCODE_H enum LRSTATUS { LEFTCHILD, //左子树 RIGHTCHIL ...
- (转)log4j日志级别设置成DEBUG时输出Html代码等问题:
log4j日志级别设置成DEBUG时输出Html代码等问题: 问题: log4j日志级别设置成DEBUG时会输出很多信息,包括一些Html代码 解决方案: log4j的控制是树形,所以在log4j.p ...