主页 > 知识库 > 网络编程 > ASP/.NET >

asp.net导出execl和图片

来源:中国IT实验室 作者:佚名 发表于:2013-07-08 14:39  点击:
个人常用导出execl方法: #region 导出文档 /// summary /// Export(application/ms-excel, DateTime.Now.ToString(yyyyMMhhddmmss) + .xls, htmlExcel, 统计); /// /summary /// param name=Filetype导出类型/param /// param name=FileName导出名称/param
 个人常用导出execl方法:  #region "导出文档"
  /// <summary>
  ///  Export("application/ms-excel", DateTime.Now.ToString("yyyyMMhhddmmss") + ".xls", htmlExcel, "统计");
  /// </summary>
  /// <param name="Filetype">导出类型</param>
  /// <param name="FileName">导出名称</param>
  /// <param name="html">用html拼装出来的要导出的内容</param>
  /// <param name="sheetName"></param>
  private void Export(string Filetype, string FileName, string html, string sheetName)
  {
  StringWriter sw = new StringWriter();
  sw.WriteLine("<html xmlns:x=\"urn:schemas-microsoft-com:office:excel\">");
  sw.WriteLine("<head>");
  sw.WriteLine("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
  sw.WriteLine("<!--[if gte mso 9]>");
  sw.WriteLine("<xml>");
  sw.WriteLine(" <x:ExcelWorkbook>");
  sw.WriteLine("   <x:ExcelWorksheets>");
  sw.WriteLine("    <x:ExcelWorksheet>");
  sw.WriteLine(string.Format(" <x:Name>{0}</x:Name>", sheetName));
  sw.WriteLine("     <x:WorksheetOptions>");
  sw.WriteLine("       <x:Print>");
  sw.WriteLine("        <x:ValidPrinterInfo />");
  sw.WriteLine("       </x:Print>");
  sw.WriteLine("     </x:WorksheetOptions>");
  sw.WriteLine("    </x:ExcelWorksheet>");
  sw.WriteLine("   </x:ExcelWorksheets>");
  sw.WriteLine("</x:ExcelWorkbook>");
  sw.WriteLine("</xml>");
  sw.WriteLine("<![endif]-->");
  sw.WriteLine("  <style type='text/css'>.td_text { background-color: #ECF9FC; text-align: left; text-align: left; }  .td_value { background-color: #FFFFFF; text-align: left; border-top: medium none; }  .tableGg { background-color: #82D1E7; border-top-width: 0px; border-bottom-width: 0px; width: 700px; } </style>");
  sw.WriteLine("</head>");
  sw.WriteLine("<body>");
  sw.WriteLine(html);
  sw.WriteLine("</body>");
  sw.WriteLine("</html>");
  sw.Close();
  Response.Clear();
  Response.Buffer = true;
  Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlDecode(FileName, Encoding.UTF8).ToString());
  Response.ContentType = Filetype;
  this.EnableViewState = false;
  Response.Write(sw);
  Response.End();
  }
  #endregion
  个人常用导出图片方法,性能不是很好:
  //Model.Data 这是图片的二进制流,Data是对象Model的一个属性byte[]
  Response.ContentType = "image/jpeg";
  if (Model.Data != null)
  {
  Response.BinaryWrite(Model.Data);
  }
  Response.End();

    有帮助
    (0)
    0%
    没帮助
    (0)
    0%