首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

生成的html文件很乱,怎么处理

2012-01-19 
生成的html文件很乱,怎么办?源:de.csusingSystemusingSystem.DatausingSystem.ConfigurationusingSyste

生成的html文件很乱,怎么办?
源:

de.cs
using   System;
using   System.Data;
using   System.Configuration;
using   System.Collections;//
using   System.Web;
using   System.Web.Security;
using   System.Web.UI;
using   System.Web.UI.WebControls;
using   System.Web.UI.WebControls.WebParts;
using   System.Web.UI.HtmlControls;
using   System.Text;//StringBuilder   类命名空间
using   System.IO;//读取写入命名空间


public   partial   class   Dhtml   :   System.Web.UI.Page
{
        protected   void   Page_Load(object   sender,   EventArgs   e)
        {

        }
        protected   void   btnCreate_Click(object   sender,   EventArgs   e)
        {
                string[]   newContent   =   new   string[5];//定义数组用来保存temphtml.html中的标记数目
                StringBuilder   strhtml   =   new   StringBuilder();//实例化一个strhtml
                try
                {
                        //创建StreamReader对象   news为TempHtml.html所在的文件夹                                      
              using   (StreamReader   sr   =   new   StreamReader(Server.MapPath( "news ")   +   "\\sj.html ",System.Text.Encoding.GetEncoding( "GB2312 ")))
                        {
                                string   str;
                                //读取指定的HTML文件模板





                                while   ((str   =   sr.ReadLine())   !=   null)
                                {
                                        strhtml.Append(str);
 
                                }


                                sr.Close();
                        }
                }
                catch   (Exception   err)
                {
                        //异常处理                                                                                                                                                                                                                                 Response.Write(err.ToString());


                }
                //为标记数组赋值
                newContent[0]   =   txtTitle.Text;//标题
                newContent[1]   =   "BackColor= '#cccfff ' ";//背景色
                newContent[2]   =   "#ff0000 ";//字体颜色
                newContent[3]   =   "100px ";//字体大小
                newContent[4]   =   txtContent.Text;//主要内容

                //根据上面新的内容生成html文件
                try
                {
                        //指定要生成的HTML文件
                        string   fname   =   Server.MapPath( "news ")   +   "\\ "   +   DateTime.Now.ToString( "yyyymmddhhmmss ")   +   ".html ";
                        //替换html模版文件里的标记为新的内容
                        for   (int   i   =   0;   i   <   5;   i++)
                        {
                                strhtml.Replace( "$htmlkey[ "   +   i   +   "] ",   newContent[i]);
                        }
                        //创建文件信息对象
                        FileInfo   finfo   =   new   FileInfo(fname);
                        //以打开或者写入的形式创建文件流
                        using   (FileStream   fs   =   finfo.OpenWrite())
                        {
                                //根据上面创建的文件流创建写数据流
                                StreamWriter   sw   =   new   StreamWriter(fs,   System.Text.Encoding.GetEncoding( "GB2312 "));
                                //把新的内容写到创建的HTML页面中
                                sw.WriteLine(strhtml);
                                sw.Flush();
                                sw.Close();
                        }
                        //设置超级链接的属性


                        hyCreateFile.Text   =   DateTime.Now.ToString( "yyyymmddhhmmss ")   +   ".html ";
                        hyCreateFile.NavigateUrl   =   "news/ "   +   DateTime.Now.ToString( "yyyymmddhhmmss ")   +   ".html ";
                }
                catch   (Exception   err)
                {
                        Response.Write(err.ToString());
                }
        }
}


生成:
<!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> <meta   http-equiv= "Content-Type "   content= "text/html;   charset=gb2312 "   /> <title> 111 </title>   <style   type= "text/css "> <!--body   {margin-left:   0px;margin-top:   0px;margin-right:   0px;margin-bottom:   0px;}--> </style> </head> <body> <table   BackColor= '#cccfff '   width= "393 "   border= "10 "   cellpadding= "0 "   cellspacing= "0 ">     <tr>         <td   width= "393 "   height= "22 "   bgcolor= "#6699CC "> <div   align= "center ">             <script   language= "JavaScript "> <!--   var   dayNames   =   new   Array( "星期日 ", "星期一 ", "星期二 ", "星期三 ", "星期四 ", "星期五 ", "星期六 ");Stamp   =   new   Date();document.write( " "   +   Stamp.getYear()   +   "年 "+(Stamp.getMonth()   +   1)   + "月 "+Stamp.getDate()+   "日 "+   "           "   +   dayNames[Stamp.getDay()]   + "                 ");//-->         </script>             <SCRIPT     language=javascript> <!--function     Year_Month(){                     var     now     =     new     Date();                     var     yy     =     now.getYear();                     var     mm     =     now.getMonth();     var     mmm=new     Array();mmm[0]= "January ";mmm[1]= "February     ";mmm[2]= "March ";mmm[3]= "April ";mmm[4]= "May ";mmm[5]= "June ";mmm[6]= "July ";mmm[7]= "August ";mmm[8]= "September ";mmm[9]= "October ";mmm[10]= "November ";mmm[11]= "December ";mm=mmm[mm];                 return(mm     );     }function     thisYear(){                     var     now     =     new     Date();                     var     yy     =     now.getYear();                     return(yy     );     }     function     Date_of_Today(){                     var     now     =     new     Date();                     return(now.getDate()     );     }     function     CurentTime(){                     var     now     =     new     Date();                     var     hh     =     now.getHours();                     var     mm     =     now.getMinutes();                     var     ss     =     now.getTime()     %     60000;                     ss     =     (ss     -     (ss     %     1000))     /     1000;                     var     clock     =     hh+ ': ';                     if     (mm     <     10)     clock     +=     '0 ';                     clock     +=     mm+ ': ';                     if     (ss     <     10)     clock     +=     '0 ';                     clock     +=     ss;                     return(clock);     }     function     refreshCalendarClock(){     document.all.calendarClock4.innerHTML     =     CurentTime();     }document.write( ' <font     id= "calendarClock1 "     >     </font> ');document.write( ' <font     id= "calendarClock2 "     >     </font> ');document.write( ' <font     id= "calendarClock3 "     >     </font> &nbsp; ');document.write( ' <font     id= "calendarClock4 "     >     </font> ');setInterval( 'refreshCalendarClock() ',1000);//-->         </SCRIPT>         </div> </td>     </tr>     <tr>         <td   bgcolor= "#0099FF "> <span   style= "color:   #ff0000;font-size:   100px ">         <marquee> 222   333   444


555   333   777         </marquee> </span> </td>     </tr>     <tr>         <td> &nbsp; </td>     </tr> </table> </body> </html>


[解决办法]
Replace(Environment.NewLine, " <br/> ");
[解决办法]
html代码乱不乱关系不大,知道浏览器能明白就行。
如果需要可以考虑转义字符 \r \t...

热点排行