1. 程式人生 > >asp.net生成html靜態頁頁面

asp.net生成html靜態頁頁面

 

先建個html模版頁(template.htm):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>$title</title>

</head>

<body>
<table $htmlformat[0] height="100%" border="0" width="100%" cellpadding="10" cellspacing="0" bgcolor="#eeeeee" style="border:1px solid #000000">
<tr>
<td width="100%" valign="middle" align="left">
<span style="color: $htmlformat[1];font-size: $htmlformat[2]">$htmlformat[3]</span>
</td>
</tr>
</table>
</body>
</html>

在asp.net中的應用(c#):

   string[] format=new string[4];//定義和htmlyem標記數目一致的陣列
   StringBuilder htmltext=new StringBuilder();
   try
   {
    using (StreamReader sr= new StreamReader(base.Server.MapPath(".")+"//template.htm"))
     {
      String line;
      while ((line = sr.ReadLine()) != null)
      {
        htmltext.Append(line);
      }
      sr.Close();
     }
   }
   catch
   {
     Response.Write("<Script>alert('讀取檔案錯誤')</Script>");
   }

   //---------------------給標記陣列賦值------------

   string title="模板測試";
   format[0]="background=/"bg.jpg/"";//背景圖片
   format[1]= "#990099";//字型顏色
   format[2]="150px";//字型大小
   format[3]= "<marquee>生成的模板html頁面</marquee>";//文字說明
   //----------替換htm裡的標記為你想加的內容
   htmltext.Replace("$title",title);//把title不放在陣列是為了比較一下,:)。這樣寫比較容易看懂
   for(int i=0;i<4;i++) //這樣寫方便。如果寫入模版的資料較多,我想為了清晰用上面的方法或許更好點。
   {
     htmltext.Replace("$htmlformat["+i+"]",format[i]);
   }

   //----------生成htm檔案------------------――

   try
   {
    using(StreamWriter sw=new StreamWriter(base.Server.MapPath(".")+"//test.htm",false,System.Text.Encoding.GetEncoding("GB2312")))
    {
      sw.WriteLine(htmltext);
      sw.Flush();
      sw.Close();
    }

   }
   catch
   {
    Response.Write ("您的許可權不夠,請與管理員聯絡!");
   }

相關推薦

asp.net生成html靜態頁面

  先建個html模版頁(template.htm): <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">&l

asp批量生成html靜態頁面方法

模板檔案中要替換的內容均以{...}括起來為力求簡潔,去掉了錯誤處理程式碼(replace中要來替換的字串引數不能為null值,當然fso也應該做錯誤檢查)。<% ' --------------------------------------------------------------------

Asp.net生成htm靜態檔案的兩種途徑(轉)

{ 12//原始碼是替換掉模板中的特徵字元13 14string mbPath =Server.MapPath("template.htm"); 15            Encoding code = Encoding.GetEncoding("gb2312"); 16            Stream

asp .net 模板引擎 使用 Razor 生成html靜態頁面

property efault index returns true getprop pattern exc lec 剛開始不是理解 寫完之後 覺得還蠻簡單的 分為這幾個步驟 1.獲取頁面模板Html 2.獲取數據 3.解析模板和數據,生成靜態頁Html代碼 4.生成靜態

ASP.NET生成靜態頁面的四種方法

在網上找了幾種比較好的生成靜態頁面的方法,基本上有這幾種原理:1,第一種,直接獲得伺服器生成的html程式碼. #region//生成被請求URL靜態頁面 public static void getUrltoHtml(string Url, string Pa

ASP.NET生成靜態頁面的方法

基本思路是:使用DW之類的工具生成一個靜態頁面模板。讀取該模板檔案,然後對裡面的特殊標記使用真實的資料替換掉,並生成一個HTML檔案。 實現程式碼 using System; using System.Collections.Generic; using S

asp.net生成靜態頁面、偽靜態頁面重定向

1、生成靜態頁面  Public Sub CreateHTML(ByVal sourceurl As String, ByVal url As String)        Try            Dim myRequest As System.Net.WebReque

Asp.NET 生成靜態

環境:Microsoft .NET Framework SDK v1.1 OS:Windows Server 2003 中文版ASP.Net生成靜態HTML頁在Asp中實現的生成靜態頁用到的FileSystemObject物件!在.Net中涉及此類操作的是System.IO

ASP.NET 動態轉靜態頁面的兩種方法總結

1、建立MyConvert.cs類檔案 using System; //記得新增以下三引用 using System.Text; using System.Web; using System.IO; namespace

.Html+Asp+asp.net(C#)禁止瀏覽器快取頁面的方法-禁止快取

在我找到的許多方案中,其中有一種建議禁止頁面快取。 具體是使用伺服器端指令碼,如下所示:  <% Response.Buffer = true; Response.ExpiresAbsolute = DateTime.Now - new TimeSpan(1, 0, 0); Response.E

設定ASP.NET MVC站點預設html

更新:上週的解決方法在Area=""使用預設路由對映時會出問題,見解決方法二 今天部署了一個Asp.Net MVC站點,希望它的預設頁是一個html頁,在vs2010中給站點根目錄增加了default.html,然後呼叫沒有什麼問題,但部署到IIS7上,就是不起作用,

利用freemarker、java生成html靜態頁面

這幾天在搞一個利用freemarker和java生成靜態頁面的東西,經過百度和自己的除錯終於搞定,現在總結出核心程式碼分享。 Java程式碼   /**       * 生成靜態頁面主方法       *        * @param context     

一個檔案搞定Asp.net core 3.1動態頁面靜態頁面

最近一個Asp.net core專案需要靜態化頁面,百度查找了一下,沒有發現合適的。原因如下 配置麻煩。 類庫引用了第三方類,修改起來麻煩。 有隻支援MVC,不支援PageModel。 繼承ActionFilterAttribute類,只重寫了OnActionExecutionAsync,看似靜態化了,其實

asp.net MVC html.ActionLink的幾種參數格式

class cti span 生成 get 傳遞 文字 targe classname 一 Html.ActionLink("linkText","actionName") 該重載的第一個參數是該鏈接要顯示的文字,第二個參數是對應的控制器的方法, 默認控制器為當前頁面的控制

ASP.NET簡單SQL分的實現

eval 當前頁 per ron lena con help adapter onclick 今天是出來實習的第32天,在學校學的像是囫圇吞棗一樣,什麽都是馬馬虎虎的,而分頁這樣的需要邏輯的像我這樣的懶人喜歡用插件,仔細捉摸了下也不好,所以就花一點時間研究了下分頁, 今天就

Web API 2 入門——創建ASP.NET Web API的幫助頁面(谷歌翻譯)

鏈接 所有 action 解決方案 fec amp 開發人員 sharp ima 在這篇文章中 創建API幫助頁面 將幫助頁面添加到現有項目 添加API文檔 在敞篷下 下一步 作者:Mike Wasson 創建Web API時,創建幫助

Asp.Net生成二維碼

without bool con from ase logs err lastindex scale 一、 1 try 2 { 3 while (this.UploadQueue.Co

學習ASP.NET Core Razor 編程系列五——Asp.Net Core Razor新建模板頁面

post方法 頁面布局 解決 文件 捕獲 create 內容 接下來 添加 學習ASP.NET Core Razor 編程系列目錄 學習ASP.NET Core Razor 編程系列一 學習ASP.NET Core Razor 編程系列二——添加

ASP.NET MVC中如何實現頁面跳轉

pub ring 項目 再見 name ati 方法 技術 mod 1,最簡單的方式:超鏈接 以下分別是連接到HomeController控制器下的SharpL動作方法,以及百度首頁。代碼如下: 1 <a href="Home\SharpL">打開S

asp.net編輯html文章上傳報錯[檢測到潛在危險]

frame 文章 ati 編輯 img 報錯 inf 上傳 ima net framework2.0升級成4.0後,上傳文章報錯 解決方案 在web.config裏添加<system.web><httpRuntime requestValidati