• .Net导出Word和Excel


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    
    
    public class ExportOffice
    {
        //导出页面或web控件方法#region 导出页面或web控件方法
        /**/
        /// <summary>
        /// 将Web控件或页面信息导出(不带文件名参数)
        /// </summary>
        /// <param name="source">控件实例</param>        
        /// <param name="DocumentType">导出类型:Excel或Word</param>
        public void ExportControl(System.Web.UI.Control source, string DocumentType)
        {
            //设置Http的头信息,编码格式
            if (DocumentType == "Excel")
            {
                //Excel            
                HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("下载文件.xls", System.Text.Encoding.UTF8));
                HttpContext.Current.Response.ContentType = "application/ms-excel";
            }
    
            else if (DocumentType == "Word")
            {
                //Word
                HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("下载文件.doc", System.Text.Encoding.UTF8));
                HttpContext.Current.Response.ContentType = "application/ms-word";
            }
    
            HttpContext.Current.Response.Charset = "UTF-8";
            HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
    
            //关闭控件的视图状态
            source.Page.EnableViewState = false;
    
            //初始化HtmlWriter
            System.IO.StringWriter writer = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter htmlWriter = new System.Web.UI.HtmlTextWriter(writer);
            source.RenderControl(htmlWriter);
    
            //输出
            HttpContext.Current.Response.Write(writer.ToString());
            HttpContext.Current.Response.End();
        }
    
        /**/
        /// <summary>
        /// 将Web控件或页面信息导出(带文件名参数)
        /// </summary>
        /// <param name="source">控件实例</param>        
        /// <param name="DocumentType">导出类型:Excel或Word</param>
        /// <param name="filename">保存文件名</param>
        public void ExportControl(System.Web.UI.Control source, string DocumentType, string filename)
        {
            //设置Http的头信息,编码格式
            if (DocumentType == "Excel")
            {
                //Excel            
                HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(filename + ".xls", System.Text.Encoding.UTF8));
                HttpContext.Current.Response.ContentType = "application/ms-excel";
            }
    
            else if (DocumentType == "Word")
            {
                //Word
                HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(filename + ".doc", System.Text.Encoding.UTF8));
                HttpContext.Current.Response.ContentType = "application/ms-word";
            }
    
            HttpContext.Current.Response.Charset = "UTF-8";
            HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF8;
    
            //关闭控件的视图状态
            source.Page.EnableViewState = false;
    
            //初始化HtmlWriter
            System.IO.StringWriter writer = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter htmlWriter = new System.Web.UI.HtmlTextWriter(writer);
            source.RenderControl(htmlWriter);
    
            //输出
            HttpContext.Current.Response.Write(writer.ToString());
            HttpContext.Current.Response.End();
        }
        #region 调用说明
        //方法ExportControl(System.Web.UI.Control source, string DocumentType,string filename)中
        //第一个参数source表示导出的页面或控件名,当为datagrid或dataList控件时,在导出Excel/word文件时,必须把控件的分页、排序等属性去除并重新绑定,
        //第二个参数DocumentType表示导出的文件类型word或excel
        //第三个参数filename表示需要导出的文件所取的文件名
        //调用方法:
        //ExportData export=new ExportData();
        //export.ExportControl(this, "Word","testfilename");//当为this时表示当前页面
        //这是将整个页面导出为Word,并命名为testfilename
        #endregion
    }
    

      

    <!DOCTYPE html>
    
    <html xmlns:v='urn:schemas-microsoft-com:vml' xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:w='urn:schemas-microsoft-com:office:word' xmlns='http://www.w3.org/TR/REC-html40'>
    <head runat="server">
     <!--[if gte mso 9]><xml><w:WordDocument><w:View>Print</w:View><w:TrackMoves>false</w:TrackMoves><w:TrackFormatting/><w:ValidateAgainstSchemas/><w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid><w:IgnoreMixedContent>false</w:IgnoreMixedContent><w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText><w:DoNotPromoteQF/><w:LidThemeOther>EN-US</w:LidThemeOther><w:LidThemeAsian>ZH-CN</w:LidThemeAsian><w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript><w:Compatibility><w:BreakWrappedTables/><w:SnapToGridInCell/><w:WrapTextWithPunct/><w:UseAsianBreakRules/><w:DontGrowAutofit/><w:SplitPgBreakAndParaMark/><w:DontVertAlignCellWithSp/><w:DontBreakConstrainedForcedTables/><w:DontVertAlignInTxbx/><w:Word11KerningPairs/><w:CachedColBalance/><w:UseFELayout/></w:Compatibility><w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel><m:mathPr><m:mathFont m:val='Cambria Math'/><m:brkBin m:val='before'/><m:brkBinSub m:val='--'/><m:smallFrac m:val='off'/><m:dispDef/><m:lMargin m:val='0'/> <m:rMargin m:val='0'/><m:defJc m:val='centerGroup'/><m:wrapIndent m:val='1440'/><m:intLim m:val='subSup'/><m:naryLim m:val='undOvr'/></m:mathPr></w:WordDocument></xml><![endif]-->
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
        <style>
            table{ border: solid 1px black;border-collapse: collapse;}
            td{ 200px;border: solid 1px black;word-wrap: break-word; word-break: break-all;}
            body,tr,td{font-size:14px;}
        </style>
    </head>
    <body>
    <form id="form1" runat="server">
     <table style="margin:0px auto;" border="1" >
            <caption style="font:20px/30px Arail;"><asp:Literal runat="server" ID="lbl_Caption"></asp:Literal></caption>
            <tr>
                <td><asp:Literal runat="server" ID="lbl_username_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_username_value"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_userCode_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_userCode_value"></asp:Literal></td>
            </tr>
            <tr>
                <td><asp:Literal runat="server" ID="lbl_sex_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_sex_value"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_birthday_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_birthday_value"></asp:Literal></td>
            </tr>
            <tr>
                <td><asp:Literal runat="server" ID="lbl_nationality_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_nationality_value"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_company_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_company_value"></asp:Literal></td>
            </tr>
            <tr>
                <td><asp:Literal runat="server" ID="lbl_hospitalName_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_hospitalName_value"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_tjDate_title"></asp:Literal></td>
                <td><asp:Literal runat="server" ID="lbl_tjDate_value"></asp:Literal></td>
            </tr>
            <asp:Literal runat="server" ID="lbl_data"> </asp:Literal>
        </table>
        </form>
    </body>
    </html>
    

      

  • 相关阅读:
    DNS 壓力測試
    2008IT技术精英年会数据库分论坛热点扫描
    DOS command
    说说大型高并发高负载网站的系统架构
    DNS Server &Bind的配置与使用
    IoC 容器和Dependency Injection 模式
    Inversion of Control Containers and the Dependency Injection pattern
    Windows 2003网络负载均衡的实现
    UVA 10369 Arctic Network
    UVA 10397 Connect the Campus
  • 原文地址:https://www.cnblogs.com/qxw0816/p/3696649.html
Copyright © 2020-2023  润新知