HTML生成类

  1 using  System;
  2 using  System.Collections.Generic;
  3 using  System.Text;
  4 using  System.IO;
  5 using  System.Web;
  6 ExpandedBlockStart.gifContractedBlock.gif /**/ /// <summary>
  7/// ====================
  8/// 作者:skyblue 带模板的HTML生成类 http://skyblue.cnblogs.com
  9/// 日期:2008-09-17
 10/// 版本:1.0.0
 11/// ====================
 12/// </summary>

 13 namespace  SkyBlue_HtmlMade
 14 ExpandedBlockStart.gifContractedBlock.gif {
 15ExpandedSubBlockStart.gifContractedSubBlock.gif    /**//// <summary>
 16    /// HTML生成类
 17    /// </summary>

 18    public class MadeHtml
 19ExpandedSubBlockStart.gifContractedSubBlock.gif    {
 20ContractedSubBlock.gifExpandedSubBlockStart.gif        Members 成员#region Members 成员
 21
 22ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 23        /// 生成的文件名称
 24        /// </summary>

 25        private string m_HtmlFileName = string.Empty;
 26
 27ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 28        /// 生成的文件名称
 29        /// </summary>

 30        public string HtmlFileName
 31ExpandedSubBlockStart.gifContractedSubBlock.gif        {
 32ExpandedSubBlockStart.gifContractedSubBlock.gif            get return m_HtmlFileName; }
 33ExpandedSubBlockStart.gifContractedSubBlock.gif            set { m_HtmlFileName = value; }
 34        }

 35
 36ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 37        /// 生成编码
 38        /// </summary>

 39        private Encoding m_code = Encoding.GetEncoding("utf-8");
 40
 41ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 42        /// 生成编码
 43        /// </summary>

 44        public Encoding Code
 45ExpandedSubBlockStart.gifContractedSubBlock.gif        {
 46ExpandedSubBlockStart.gifContractedSubBlock.gif            get return m_code; }
 47ExpandedSubBlockStart.gifContractedSubBlock.gif            set { m_code = value; }
 48        }

 49
 50ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 51        /// html 模版全路径
 52        /// </summary>

 53        private string m_TemplateFilePath = string.Empty;
 54
 55ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 56        /// html 模版全路径
 57        /// </summary>

 58        public string TemplateFilePath
 59ExpandedSubBlockStart.gifContractedSubBlock.gif        {
 60ExpandedSubBlockStart.gifContractedSubBlock.gif            get return m_TemplateFilePath; }
 61ExpandedSubBlockStart.gifContractedSubBlock.gif            set { m_TemplateFilePath = value; }
 62        }

 63
 64ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 65        /// 参数值数组
 66        /// </summary>

 67        private string[] m_values;
 68
 69ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 70        /// 替换参数数组
 71        /// </summary>

 72        private string[] m_params;
 73
 74ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 75        /// 生成文件文件夹
 76        /// </summary>

 77        private string m_HtmlFilePath = string.Empty;
 78
 79ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 80        /// 生成Html文件文件夹路径
 81        /// </summary>

 82        public string HtmlFilePath
 83ExpandedSubBlockStart.gifContractedSubBlock.gif        {
 84ExpandedSubBlockStart.gifContractedSubBlock.gif            get return m_HtmlFilePath; }
 85ExpandedSubBlockStart.gifContractedSubBlock.gif            set { m_HtmlFilePath = value; }
 86        }

 87        #endregion

 88
 89ContractedSubBlock.gifExpandedSubBlockStart.gif        Contructors 构造#region Contructors 构造
 90        public MadeHtml()
 91ExpandedSubBlockStart.gifContractedSubBlock.gif        {
 92 
 93        }

 94ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
 95        /// templateFilePath html模版全路径
 96        /// htmlFilePath 生成Html文件文件夹路径
 97        /// htmlFileName 生成的文件名称
 98        /// code 生成文件编码
 99        /// </summary>
100        /// <param name="templateFilePath"></param>
101        /// <param name="htmlFilePath"></param>
102        /// <param name="htmlFileName"></param>
103        /// <param name="code"></param>

104        public MadeHtml(string templateFilePath,string htmlFilePath, string htmlFileName, Encoding code)
105ExpandedSubBlockStart.gifContractedSubBlock.gif        {
106            this.m_TemplateFilePath = templateFilePath;
107            this.m_HtmlFilePath = htmlFilePath;
108            this.m_HtmlFileName = htmlFileName;
109            this.m_code = code;
110        }

111ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
112        /// templateFilePath html模版全路径
113        /// htmlFilePath 生成Html文件文件夹路径
114        /// htmlFileName 生成的文件名称
115        /// </summary>
116        /// <param name="templateFilePath"></param>
117        /// <param name="htmlFilePath"></param>
118        /// <param name="htmlFileName"></param>

119        public MadeHtml(string templateFilePath, string htmlFilePath, string htmlFileName)
120ExpandedSubBlockStart.gifContractedSubBlock.gif        {
121            this.m_TemplateFilePath = templateFilePath;
122            this.m_HtmlFilePath = htmlFilePath;
123            this.m_HtmlFileName = htmlFileName;
124        }
 
125        #endregion

126
127ContractedSubBlock.gifExpandedSubBlockStart.gif        Methods 方法#region Methods 方法
128
129ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
130        /// html生成
131        /// </summary>
132        /// <returns></returns>

133        public string HtmlWriting(string[] param, string[] value)
134ExpandedSubBlockStart.gifContractedSubBlock.gif        {
135          
136            if (param.Length > 0 && value.Length > 0 && param.Length == value.Length)
137ExpandedSubBlockStart.gifContractedSubBlock.gif            {
138                this.m_params = param;
139                this.m_values = value;
140
141                return this.HtmlFileWirte();
142            }

143            else
144ExpandedSubBlockStart.gifContractedSubBlock.gif            {
145                return "";
146            }

147        }

148
149ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
150        /// 生成Html
151        /// </summary>
152        /// <returns></returns>

153        private string HtmlFileWirte()
154ExpandedSubBlockStart.gifContractedSubBlock.gif        {
155
156            // 读取模板文件
157            string tempHtml = HttpContext.Current.Server.MapPath(this.TemplateFilePath);
158            StreamReader srd = null;
159            string str = "";
160            try
161ExpandedSubBlockStart.gifContractedSubBlock.gif            {
162                srd = new StreamReader(tempHtml, this.m_code);
163                str = srd.ReadToEnd(); // 读取文件
164            }

165            catch (Exception ex)
166ExpandedSubBlockStart.gifContractedSubBlock.gif            {
167                throw ex;        
168              
169            }

170            finally
171ExpandedSubBlockStart.gifContractedSubBlock.gif            {
172                srd.Close();
173            }

174            // 替换内容
175            // 这时,模板文件已经读入到名称为str的变量中了
176            for (int i = 0; i < this.m_params.Length; i++)
177ExpandedSubBlockStart.gifContractedSubBlock.gif            {
178                str = str.Replace(this.m_params[i], this.m_values[i]);
179            }

180
181            return SaveHtmlFile(str);
182        }

183
184ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
185        /// 保存文件
186        /// 返回生成的文件名称
187        /// </summary>
188        /// <param name="str">string</param>
189        /// <returns>string</returns>

190        private string SaveHtmlFile(string str)
191ExpandedSubBlockStart.gifContractedSubBlock.gif        {
192            if (str.Length > 0)
193ExpandedSubBlockStart.gifContractedSubBlock.gif            {
194                // 写文件
195                StreamWriter sw = null;
196                try
197ExpandedSubBlockStart.gifContractedSubBlock.gif                {
198                    //独要
199                    string HtmlPath = HttpContext.Current.Server.MapPath(this.m_HtmlFilePath);
200
201                    //获得文要生成Html文件名称
202                    string HtmlFileName = GetHtmlFileName();
203
204                    //判断文件是否在,存在删除
205                    if (File.Exists(HtmlPath + "\\" + HtmlFileName))
206ExpandedSubBlockStart.gifContractedSubBlock.gif                    {
207                        File.Delete(HtmlPath + "\\" + HtmlFileName);
208                    }

209
210                    //写文件
211                    sw = new StreamWriter(HtmlPath + "\\" + HtmlFileName, falsethis.Code);
212                    sw.Write(str);
213                    sw.Flush();
214
215
216                    return HtmlFileName;
217                }

218                catch (Exception ex)
219ExpandedSubBlockStart.gifContractedSubBlock.gif                {
220                    throw ex;
221                }

222                finally
223ExpandedSubBlockStart.gifContractedSubBlock.gif                {
224                    sw.Close();
225                }

226                return "";
227            }

228            else
229ExpandedSubBlockStart.gifContractedSubBlock.gif            {
230                return "";
231            }

232        }

233
234ExpandedSubBlockStart.gifContractedSubBlock.gif        /**//// <summary>
235        /// 获得文件
236        /// </summary>
237        /// <returns></returns>

238        private string GetHtmlFileName()
239ExpandedSubBlockStart.gifContractedSubBlock.gif        {
240            if (m_HtmlFileName.Length == 0)
241ExpandedSubBlockStart.gifContractedSubBlock.gif            {
242                return DateTime.Now.ToString("yyyyMMddHHmmss"+ ".html";
243            }

244            else
245ExpandedSubBlockStart.gifContractedSubBlock.gif            {
246                return m_HtmlFileName;
247            }

248        }

249        #endregion

250    }

251}

252

 

模版

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>生成试测</title>
    <style type="text/css">
    body
    {
    margin:0;
    padding:0;
    }
    .ContentDiv
    {
        float:left;
        border-top:solid 1px #000000;text-align:center;
        border-right:solid 1px #000000; width:98px;
    }
    </style>
</head>
<body>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="400">
<tr>
<td style="border-left:solid 1px #000000; "><div class="ContentDiv">一</div><div class="ContentDiv">一</div><div class="ContentDiv">一</div><div class="ContentDiv">一</div><div class="ContentDiv">一</div><div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div class="ContentDiv">一</div>
<div style=" background-color:#000000;margin:0; padding:0; height:1px; width:99%"></div>

</td>
</tr>
</table>

</body>

</html>

 测式调用

       //<div class="ContentDiv">一</div>
        SkyBlue_HtmlMade.MadeHtml dal = new MadeHtml("Html/Template.htm", "html", "test.htm");
        string[] param ={ "$HtmlStr$" };
        string[] value ={ "<div class=""ContentDiv"">一</div><div class=""ContentDiv"">一</div><div class=""ContentDiv"">一</div><div class=""ContentDiv"">一</div><div class=""ContentDiv"">一</div><div class=""ContentDiv"">一</div>" };
        string flag= dal.HtmlWriting(param, value);
        Response.Write(flag);

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用 JavaScript 编写的记忆游戏(附源代码)   项目:JavaScript 记忆游戏(附源代码) 记忆检查游戏是一个使用 HTML5、CSS 和 JavaScript 开发的简单项目。这个游戏是关于测试你的短期 记忆技能。玩这个游戏 时,一系列图像会出现在一个盒子形状的区域中 。玩家必须找到两个相同的图像并单击它们以使它们消失。 如何运行游戏? 记忆游戏项目仅包含 HTML、CSS 和 JavaScript。谈到此游戏的功能,用户必须单击两个相同的图像才能使它们消失。 点击卡片或按下键盘键,通过 2 乘 2 旋转来重建鸟儿对,并发现隐藏在下面的图像! 如果翻开的牌面相同(一对),您就赢了,并且该对牌将从游戏中消失! 否则,卡片会自动翻面朝下,您需要重新尝试! 该游戏包含大量的 javascript 以确保游戏正常运行。 如何运行该项目? 要运行此游戏,您不需要任何类型的本地服务器,但需要浏览器。我们建议您使用现代浏览器,如 Google Chrome 和 Mozilla Firefox, 以获得更好、更优化的游戏体验。要玩游戏,首先,通过单击 memorygame-index.html 文件在浏览器中打开游戏。 演示: 该项目为国外大神项目,可以作为毕业设计的项目,也可以作为大作业项目,不用担心代码重复,设计重复等,如果需要对项目进行修改,需要具备一定基础知识。 注意:如果装有360等杀毒软件,可能会出现误报的情况,源码本身并无病毒,使用源码时可以关闭360,或者添加信任。
Thymeleaf是一个用于在服务器端生成HTML页面的Java模板引擎。它允许你在HTML文件中嵌入表达式和逻辑,以便根据动态数据生成最终的HTML页面。 要使用Thymeleaf生成HTML,你需要安装Thymeleaf的依赖,并在你的Java项目中配置Thymeleaf模板引擎。下面是一个简单的示例来演示如何使用Thymeleaf生成HTML。 1. 首先,确保在你的项目中包含了Thymeleaf的依赖。你可以通过在你的构建工具(如Maven或Gradle)的配置文件中添加Thymeleaf依赖来实现。 2. 在你的Java web应用程序中,创建一个Controller类来处理页面请求。这个Controller类将处理生成HTML的逻辑。你可以使用Spring MVC或其他类似的框架来实现。 3. 在你的项目中创建一个Thymeleaf模板文件,其文件扩展名通常为.html或者.xhtml。在这个模板文件中,你可以使用Thymeleaf的语法来嵌入表达式、条件逻辑和循环等。 4. 在你的Controller类中,使用Thymeleaf模板引擎来处理模板文件并生成最终的HTML页面。你可以使用Thymeleaf提供的相关API来加载模板、设置模型数据和渲染模板。 5. 最后,在你的Controller方法中返回生成HTML页面,以便将其显示给用户。 这只是一个简单的示例来介绍Thymeleaf生成HTML的基本步骤。Thymeleaf还提供了许多其他功能,如表单处理、国际化和片段包含等。你可以参考Thymeleaf官方文档来了解更多详细信息和示例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值