一个比较难的问题,请高手帮忙解决下!解决立即给分~~~~~~~~
下面是一个生成静态页面的程序,但是有点错误!
错误一:生成页面后静态页面的title不显示,我要求是显示与新闻标题一样的内容!
错误二:页面生成后内容和标题都显示为2部分!
还有一个问题就是在输入的内容很多的时候我本来输入的时候上分段显示的~~但是静态页面那里确不是这样显示!而且显示的比较乱!我查了资料说是把那些替换成HTML代码就可以!但是我不知道怎么替换!请大家帮我写一个简单例子!搞定完立即给分!
程序代码如下:
string path1 = Server.MapPath( "news/ ");
Encoding code = Encoding.GetEncoding( "gb2312 ");
string temp = Server.MapPath( "news/text.htm ");
StreamReader sr = null;
StreamWriter sw = null;
string str = " ";
try
{
sr = new StreamReader(temp, code);
str = sr.ReadToEnd();
}
catch (Exception exp)
{
Response.Write(exp.Message);
sr.Close();
}
string htmlname = DateTime.Now.ToString( "yyyymmddhhmmss ") + ".htm ";
str = str.Replace( "&showarticle& ",str);
str = str.Replace( "&biaoti& ",stringtext);
str = str.Replace( "&neirong& ",strcontent);
try
{
sw = new StreamWriter(path1 + htmlname, false, code);
sw.Write(str);
sw.Flush();
Response.Write( "文件写入成功! ");
}
catch (Exception ex)
{
Response.Write(ex.Message);
Response.End();
}
finally
{
sw.Close();
}
静态页面代码:
<!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> &showarticle& </title>
<style type= "text/css ">
<!--
body {
margin-top: 0px;
}
-->
</style> </head>
<body>
<table width= "800 " border= "0 " cellspacing= "0 " cellpadding= "0 ">
<tr>
<td> &biaoti& </td>
</tr>
<tr>
<td> &neirong& </td>
</tr>
</table>
</body>
</html>
[解决办法]
1 stringtext是哪里来的? 如果是标题就没问题
2 stringtext,strcontent会不会有问题呢?
建议替换中不要用 &&格式,因为&在HTML中特殊的涵义
代码基本上没问题 主要就是一个replace了 你仔细看看别的吧
[解决办法]
1. Title 为空是因为 你的str 初始值为 " "
str = str.Replace( "&showarticle& ",str); 是不是应该改成这样
str = str.Replace( "&showarticle& ",你的Title变量);
2.标题和内容分为两段,这个就不太清楚了,你可以查看源代码,看看它们具体是怎么显示的
3.A 可以使用文本编辑器作为内容的输入介质 如 CuteEditor
B 如果采用的是 TextArea 或 多行的 TextBox 需要对 HTML 标题进行替换,并处理回车换行符之类的特殊字符
[解决办法]
替换一下就OK了
str.Repalce( "\r\n ", " <br/> ")
str.Repalce( " ", " ")
[解决办法]
str = str.Replace( "&showarticle& ",str);
===
标识符最好不要用 & ,常用 $