ConvertHtmlPage.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /* 作者: 季健国
  2. * 创建时间: 2012/7/15 11:03:09
  3. *
  4. */
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.IO;
  10. namespace Ant.Service.Common
  11. {
  12. /// <summary>
  13. ///ConvertHtmlPage 生成静态页面
  14. /// </summary>
  15. public class ConvertHtmlPage
  16. {
  17. /// <summary>
  18. /// 生成HTML文件
  19. /// </summary>
  20. /// <param name="templatePath">模板路径</param>
  21. /// <param name="templateName">模板名称</param>
  22. /// <param name="htmlPath">生成HTML的路径</param>
  23. /// <param name="htmlName">生成HTML的名称</param>
  24. /// <param name="format">替换的内容</param>
  25. /// <returns></returns>
  26. public static bool CreatePage(string templatePath, string templateName, string htmlPath, string htmlName, List<string> format)
  27. {
  28. try
  29. {
  30. //读取模板文件
  31. StringBuilder htmltext = new StringBuilder();
  32. using (StreamReader sr = new StreamReader(templatePath + templateName))
  33. {
  34. string line;
  35. while ((line = sr.ReadLine()) != null)
  36. {
  37. htmltext.AppendLine(line);
  38. }
  39. sr.Close();
  40. }
  41. //替换HTML中的标记内容
  42. for (int i = 0; i < format.Count; i++)
  43. {
  44. htmltext.Replace("$htmlformat[" + i + "]", format[i]);
  45. }
  46. //生成HTML文件
  47. using (StreamWriter sw = new StreamWriter(htmlPath + htmlName, false, System.Text.Encoding.GetEncoding("GB2312")))
  48. {
  49. sw.WriteLine(htmltext);
  50. sw.Flush();
  51. sw.Close();
  52. }
  53. }
  54. catch //(Exception ex)
  55. {
  56. return false;
  57. }
  58. return true;
  59. }
  60. }
  61. }