zoukankan      html  css  js  c++  java
  • 生成静态页html

    代码:

    using System;
    using System.Collections;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Net;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Framework.Common
    {
        public class StaticPage
        {
            /// <summary>
            /// html模板地址
            /// </summary>
            public string TemplateUrl { get; set; }
            /// <summary>
            /// 生成html保存地址
            /// </summary>
            public string DestinationUrl { get; set; }
            /// <summary>
            /// 要替换的键值对
            /// </summary>
            public Hashtable KValues { get; set; }
    
            public StaticPage() { }
            public StaticPage(string templateUrl, string destinationUrl, Hashtable kValues)
            {
                this.TemplateUrl = templateUrl;
                this.DestinationUrl = destinationUrl;
                this.KValues = kValues;
            }
    
            public bool Save()
            {
                bool _isOk = false;
                WebResponse response = WebRequest.Create(TemplateUrl).GetResponse();
                using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8))
                {
                    string tempContent = reader.ReadToEnd();
                    foreach (string item in KValues.Keys)
                    {
                        tempContent = tempContent.Replace("{" + item.ToString() + "}", KValues[item].ToString());
                    }
                    using (StreamWriter write = new StreamWriter(DestinationUrl, false, System.Text.Encoding.UTF8))
                    {
                        write.Write(tempContent);
                        write.Flush();
                        write.Close();
                        _isOk = true;
                    }
                }
                return _isOk;
            }
        }
    }

    使用:

    Models.OfficialStoryInfo item = OfficialStoryInfoBLL.GetEntity(id);
    string tempUrl = HttpContext.Current.Server.MapPath("~/temp/officialstory.txt");
    string
    destUrl = HttpContext.Current.Server.MapPath("~/html/OfficialStory/" + item.ID + ".html"); System.Collections.Hashtable ht = new System.Collections.Hashtable(); ht.Add("title", item.Name); ht.Add("contents", item.Description); bool isok = new Common.StaticPage() { DestinationUrl = destUrl, KValues = ht, TemplateUrl = tempUrl }.Save();
  • 相关阅读:
    [bzoj1613 Usaco2007 Jan]Running贝茜的晨练计划
    [bzoj1600][Usaco2008 Oct]建造栅栏
    [bzoj3208]花神的秒题计划I
    [vijos1011]滑雪
    [noip2007 pjt3] 守望者的逃离
    DP(1) 背包
    快速幂 模板及应用
    BZOJ1303: [CQOI2009]中位数图
    BZOJ1083: [SCOI2005]繁忙的都市
    Bzoj1084: [SCOI2005]最大子矩阵
  • 原文地址:https://www.cnblogs.com/xsj1989/p/7028604.html
Copyright © 2011-2022 走看看