zoukankan      html  css  js  c++  java
  • 简单实用的Asp.net生成静态页方法

    闲来没事,瞎弄了个动态生成静态HTML的东东,一般比如新闻等的查看页面,都会用到。

    方法虽笨,但容易理解!希望可以给没有做过类似情况的人员一点思路。

    步骤1:建立一个HTML模板,如下图所示,其中{$Title}这些是动态要替换掉的。

    当然,我这个只是一个救命,样式布局什么的都没有加。

    步骤2:写转换的代码。(代码中没有做任何的错误保护及异常处理)

    代码
    protected void Page_Load(object sender, EventArgs e)
        {
            
    //新闻的ID
            string id = "89516549846";
            
    //新闻的标题
             string title = "测试生成的静态页";
            
    //新闻的发布时间
             string date = "2010-10-28";
            
    //新闻的内容
             string content = @" 中国石油昨晚发布三季报,按国际会计准则前三季度归属于本公司股东的净利润为1000.3亿元人民币,基本每股收益0.55元人民币,比上年同期增长23%。此外第三季度净利达到347亿元,同比增长12.5%,也创下了两年来季度业绩最佳值。<br/>
                                <br/>
                                接近2009年全年利润<br/>
                                <br/>
                                这也是今年以来中石油净利润首度突破1000亿元,已经接近2009年其全年净利润1031亿元。受到油气价格和产量的提升,上半年中石油实现净利润652.11亿元,同比增29.6%若以每月平均30天计算,前9个月中石油创下净利润1000亿元,即相当于每日净赚3.7亿元。作为上游业务比较大的石油公司,原油价格和产量对公司业绩影响最大。<br/>
                                <br/>
                                前三季度,公司共生产原油6.4亿桶,同比上升1.3%,生产可销售天然气16845亿立方英尺,同比增长10.5%,实现国内原油生产稳中有升、天然气产量继续保持两位数增长。前三季度,共加工原油6.57亿桶,同比上升8.3%。进入6月份以来,国际市场油价持续在每桶70美元-80美元之间高位波动。<br/>
                                <br/>
                                国际油价上涨所致<br/>
                                <br/>
                                对于上述业绩,中国石油表示,总体经营业绩好于预期。中国石油股份有限公司有关人士对记者表示,取得上述业绩确实受到国际油价上涨影响。
                                    <br/>
                                26日国内成品油价格再度上调,中信证券分析人士表示,油价上调将利于改善中石油的炼油成本。此外受到认为弱势美元和充裕流动性影响以及美国能源部和OPEC等权威机构上调原油需求与其基本面支撑叠加,预计油价还有上升趋势,并可能在四季度达到90美元乃至100美元每桶的全年高点,也将利好于中石油。预计中石油全年的EPS(每股收益)可达0.91元。<br/>
                                <br/>
                                分析<br/>
                                <br/>
                                爆炸事故对业绩影响不大<br/>
                                <br/>
                                7月16日,中石油大连新港保税区油库发生原油泄漏和爆炸,并导致该油库输送至大连石化公司的新大线停止运行,直接影响了大连石化的生产。但该条管线在7月16日事发三天后即7月19日22时45分即恢复运行,并以每天4.5万吨的输量向大连石化供油。<br/>
                                <br/>
                                公开资料显示大连石化年炼油能力超过2000万吨,是目前国内最大的炼厂之一。但其占中石油整体炼油能力比重并不大。截至2009年中石油的炼油年加工能力达到1.49亿吨。<br/>
                                <br/>
                                此前中石油相关负责人也对记者表示,大连事件对公司的整体运营影响不大。<br/>
                                <br/>
                                10月24日,曾经发生爆炸的103号油罐再次发生火灾。但对于此次事故,中石油方面则没有披露相关信息。<br/>
    ";
            
            
    //以下代码功能就是将HTML模板的内容替换,生成新的静态页面
             string templete=string.Empty;
            StreamReader sr 
    = new StreamReader(Server.MapPath("~/HtmlTemplete/news.htm"),System.Text.Encoding.Default);
            templete 
    = sr.ReadToEnd();

            templete 
    = templete.Replace("{$Title}", title).Replace("{$Date}", date).Replace("{$Content}", content);

            
    string filePath = Server.MapPath("~/news/2010/10/28/89516549846.html");
            
    string directory=System.IO.Path.GetDirectoryName(filePath);
            
    if (!Directory.Exists(directory))
                Directory.CreateDirectory(directory);

            StreamWriter sw 
    = new StreamWriter(filePath, false, System.Text.Encoding.Default);
            sw.Write(templete);

            
    //使用完成后,要释放关闭,否则Response.Redirect("news/2010/10/28/89516549846.html");的时候,会报“文件正在使用的错误”
             sw.Flush();
            sw.Close();

            Response.Redirect(
    "news/2010/10/28/89516549846.html");
        }

    步骤3:预览生成的页面。效果如下。

    完成了,简单吧~~

  • 相关阅读:
    在局部场景中重新定位 Revit 数据
    MP.PDFDocumentCreate
    ArcGIS Pro在 ModelBuilder 中使用逻辑工具的示例 如果数据已存在
    【Arcpy学习实践教程】wgs84坐标系和火星坐标系的转换中demo的对与错
    ArcGIS Pro更新和修复数据源
    ArcGIS API for Python和ArcPy区别
    使用ArcGISPro操作multipatch数据(转)
    arcpy自动制图实战(arcpy.mapping迁移至arcpy.mp)(转)
    pro Camera
    arcgis pro ArcGISProject
  • 原文地址:https://www.cnblogs.com/liu2008hz/p/1863608.html
Copyright © 2011-2022 走看看