[C#]网格数据导出到Excel,Excel转DataSet
2016-07-20 14:07
477 查看
/// <summary>
/// 将网格数据导出到Excel
/// </summary>
/// <param name="ctrl">网格名称(如GridView1)</param>
/// <param name="FileType">要导出的文件类型(Excel:application/ms-excel)</param>
/// <param name="FileName">要保存的文件名</param>
public static void GridViewToExcel(Control ctrl, string FileName)
{
HttpContext.Current.Response.Charset = "UTF-8";
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ContentEncoding = Encoding.UTF8;//注意编码
HttpContext.Current.Response.HeaderEncoding = Encoding.UTF8;
HttpContext.Current.Response.AppendHeader("Content-Disposition",
"attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
HttpContext.Current.Response.ContentType = "application/ms-excel;msword"; //image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword
ctrl.Page.EnableViewState = false;
StringWriter tw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(tw);
ctrl.RenderControl(hw);
string meta = "<meta http-equiv=\"content-type\" content=\"application/ms-excel; charset=\"UTF-8\"/>";
//HttpContext.Current.Response.Write(meta);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
using System.Data.OleDb;
/// <summary>
/// 将Excel转DataSet
/// </summary>
/// <param name="Path">路径</param>
/// <param name="sheet">表名</param>
/// <returns></returns>
public static DataSet ExcelToDS(string Path,string sheet)
{
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "";
OleDbDataAdapter myCommand = null;
DataSet ds = null;
strExcel = "select * from [" + sheet + "$]";
myCommand = new OleDbDataAdapter(strExcel, strConn);
ds = new DataSet();
myCommand.Fill(ds, "table1");
return ds;
}
/// 将网格数据导出到Excel
/// </summary>
/// <param name="ctrl">网格名称(如GridView1)</param>
/// <param name="FileType">要导出的文件类型(Excel:application/ms-excel)</param>
/// <param name="FileName">要保存的文件名</param>
public static void GridViewToExcel(Control ctrl, string FileName)
{
HttpContext.Current.Response.Charset = "UTF-8";
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ContentEncoding = Encoding.UTF8;//注意编码
HttpContext.Current.Response.HeaderEncoding = Encoding.UTF8;
HttpContext.Current.Response.AppendHeader("Content-Disposition",
"attachment;filename=" + HttpUtility.UrlEncode(FileName, Encoding.UTF8).ToString());
HttpContext.Current.Response.ContentType = "application/ms-excel;msword"; //image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword
ctrl.Page.EnableViewState = false;
StringWriter tw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(tw);
ctrl.RenderControl(hw);
string meta = "<meta http-equiv=\"content-type\" content=\"application/ms-excel; charset=\"UTF-8\"/>";
//HttpContext.Current.Response.Write(meta);
HttpContext.Current.Response.Write(tw.ToString());
HttpContext.Current.Response.Flush();
HttpContext.Current.Response.End();
}
using System.Data.OleDb;
/// <summary>
/// 将Excel转DataSet
/// </summary>
/// <param name="Path">路径</param>
/// <param name="sheet">表名</param>
/// <returns></returns>
public static DataSet ExcelToDS(string Path,string sheet)
{
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "";
OleDbDataAdapter myCommand = null;
DataSet ds = null;
strExcel = "select * from [" + sheet + "$]";
myCommand = new OleDbDataAdapter(strExcel, strConn);
ds = new DataSet();
myCommand.Fill(ds, "table1");
return ds;
}
相关文章推荐
- SQL Server2008导出数据之Excel详细解析
- ASP.NET导出Excel打开时提示:与文件扩展名指定文件不一致解决方法
- PHP 导出Excel示例分享
- Coolite优化导出Excel文件实现代码
- php导出excel格式数据问题
- JavaWeb动态导出Excel可弹出下载
- asp.net生成Excel并导出下载五种实现方法
- JFinal学习-Excel导出
- export excel
- POI 导出EXCEL
- 使用poi导出excel
- office导出excel本地可以成功,服务器怎么也导出不成功,就换用NPOI导出excel 可以成功导出gridview或datatble数据
- asp.net如何导出excel
- 合理使用导出csv、excel方式
- asp.net 导出Excel并设置格式
- C# 将数据导出到Excel汇总|C#导出Excel汇总
- 利用java反射机制实现动态导出excel
- php导出到excel表格里
- Excel导出
- 导出excel,最前面数字0不见了