请问如何将一个index.aspx文件生成为index.html的静态页面,我想是不是这样的,
先得到index.aspx执行后的源文件(实为html代码,就像查看源文件得到的代码),
如果是,我当如何获取这个aspx文件源代码?获取以后如何生成为index.html文件,如
果不是那兄弟们都用什么方法,望兄弟们说详细一点,不要一句用System.IO 我先谢过
解决马上给分 给点代码更爽,没有给个思路也行
25 个解决方案
#1
如果你的页操作逻辑比较复杂的话,我看根本不可能..因为好多操作都是要POST回去,然后结合VIEWSTATE生成的客户端代码.每次操作生成的都是不一样的..所以生成一个页面根本不行..除非你把ASPX转成ASP页面..
#2
我这样试过。执行aspx文件,查看->源文件,然后用记事本保存为html文件,没有问题.
#3
生成静态估计有点难..microsoft网站大多也不是静态的..
#4
这样的静态页面不是纯静态,浪费了很多数据
#5
这个网站www.jxsoufun.cn用的是xhtml+css也是生成静态页,包括新闻,我想应该差不多是这个样子
#6
http://community.csdn.net/Expert/topic/3621/3621193.xml?temp=.6931421
#7
那么我有一个网页的源代码,我该如何通过程序把它写成html文件呢?
#8
那么我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#9
www.jxsoufun.cn用的是xhtml+css
请问他后台是.net的?是用ASP.net写的吗?
请问他后台是.net的?是用ASP.net写的吗?
#10
他的后台应该是asp因为我看他的网站有很多的asp文件,他首页的各个栏目都是生成
静态页,我想可能他是,比如果一个栏目要加新闻,就把这个栏目生成静态页,然
后首页就用iframe将各栏目组合起来,这样的话首页就永远不用生成
那么我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#11
你将他的首页另存为,然后打开文件夹,就能有所发现
#12
关注中
#13
看来高手还都在睡觉呀
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#14
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#15
FileStream stream = new FileStream(......htm)//打开要写入的html文件
TextWriter writer = new TextWriter( ....... stream ........ )//创建一个TextWriter用于写
System.Web.UI.HtmlTextWriter hwriter = new HtmlTextWriter( ...... writer ...... )//创建一个HtmlTextWriter用于给控件写入HTML。
using ( StreamReader aspxReader = new StreamReader( .....aspx ) )//打开aspx文件
{ System.Web.UI.Control control = new System.Web.UI.Page().ParseControl( aspxReader.ReadToEnd ); }//分析aspx文件
control.ReaderControl( hwriter );//写入。
stream.Dispose();//关闭文件
我不喜欢贴代码,但这也已经够详细了。
TextWriter writer = new TextWriter( ....... stream ........ )//创建一个TextWriter用于写
System.Web.UI.HtmlTextWriter hwriter = new HtmlTextWriter( ...... writer ...... )//创建一个HtmlTextWriter用于给控件写入HTML。
using ( StreamReader aspxReader = new StreamReader( .....aspx ) )//打开aspx文件
{ System.Web.UI.Control control = new System.Web.UI.Page().ParseControl( aspxReader.ReadToEnd ); }//分析aspx文件
control.ReaderControl( hwriter );//写入。
stream.Dispose();//关闭文件
我不喜欢贴代码,但这也已经够详细了。
#16
在 Web 窗体页上写出一系列连续的 HTML 特定字符和文本。此类提供 ASP.NET 服务器控件在将 HTML 内容呈现给客户端时所使用的格式化功能。
script language="C#" runat="server">
const int maxRows = 3;
const int maxCols = 5;
protected override void Render(HtmlTextWriter writer) {
writer.WriteFullBeginTag("html");
writer.WriteLine();
writer.WriteFullBeginTag("body");
writer.WriteLine();
writer.WriteFullBeginTag("h1");
writer.Write("Using the HtmlTextWriterClass");
writer.WriteEndTag("h1");
writer.WriteLine();
// ...
writer.WriteBeginTag("table");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontWeight, "bold");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, "verdana");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontSize, "14pt");
writer.WriteAttribute("border","1");
writer.Write(HtmlTextWriter.TagRightChar);
writer.WriteLine();
writer.Indent++;
for (int i=0; i<maxRows; i++) {
writer.WriteFullBeginTag("tr");
writer.WriteLine();
writer.Indent++;
for (int j=0; j<maxCols; j++) {
writer.WriteBeginTag("td");
writer.WriteAttribute("valign","top");
writer.WriteAttribute("bgcolor","lightblue");
writer.Write(HtmlTextWriter.TagRightChar);
writer.Write("Cell (" + i.ToString() + "," + j.ToString() + ")" );
writer.WriteEndTag("td");
writer.WriteLine();
}
writer.Indent--;
writer.WriteEndTag("tr");
writer.WriteLine();
}
writer.Indent--;
// ...
writer.WriteEndTag("table");
writer.WriteLine();
writer.WriteEndTag("body");
writer.WriteLine();
writer.WriteEndTag("html");
}
</script>
script language="C#" runat="server">
const int maxRows = 3;
const int maxCols = 5;
protected override void Render(HtmlTextWriter writer) {
writer.WriteFullBeginTag("html");
writer.WriteLine();
writer.WriteFullBeginTag("body");
writer.WriteLine();
writer.WriteFullBeginTag("h1");
writer.Write("Using the HtmlTextWriterClass");
writer.WriteEndTag("h1");
writer.WriteLine();
// ...
writer.WriteBeginTag("table");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontWeight, "bold");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, "verdana");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontSize, "14pt");
writer.WriteAttribute("border","1");
writer.Write(HtmlTextWriter.TagRightChar);
writer.WriteLine();
writer.Indent++;
for (int i=0; i<maxRows; i++) {
writer.WriteFullBeginTag("tr");
writer.WriteLine();
writer.Indent++;
for (int j=0; j<maxCols; j++) {
writer.WriteBeginTag("td");
writer.WriteAttribute("valign","top");
writer.WriteAttribute("bgcolor","lightblue");
writer.Write(HtmlTextWriter.TagRightChar);
writer.Write("Cell (" + i.ToString() + "," + j.ToString() + ")" );
writer.WriteEndTag("td");
writer.WriteLine();
}
writer.Indent--;
writer.WriteEndTag("tr");
writer.WriteLine();
}
writer.Indent--;
// ...
writer.WriteEndTag("table");
writer.WriteLine();
writer.WriteEndTag("body");
writer.WriteLine();
writer.WriteEndTag("html");
}
</script>
#17
我的意思这个TextBox里面以经有了源代码,我想把这个代码生成为html文件
#18
错误在这里看看
不知为何全是乱码
TextBox内容:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>首页</title>
<meta http-equiv=content-type content="text/html; charset=gb2312">
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<SCRIPT language="JavaScript">
<!--弹出站长热线消息框
<!--
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
function MM_popupMsg(msg) { //v1.0
alert(msg);
}
//-->
</SCRIPT>
<STYLE type="text/css">BODY { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #000000; PADDING-TOP: 0px; BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: center }
TD { FONT-SIZE: 12px }
FORM { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px }
INPUT { FONT-SIZE: 12px; COLOR: #333333 }
SELECT { FONT-SIZE: 12px; COLOR: #333333 }
A:link { COLOR: #00007f }
A:visited { COLOR: #65038e }
A:hover { COLOR: #ff0000 }
A:active { COLOR: #ff0000 }
.TabBox01 { BACKGROUND-COLOR: #fb44bb }
.TabBox02 { BORDER-RIGHT: #f9f1f7 1px solid; BORDER-TOP: #f9f1f7 1px solid; BORDER-LEFT: #f9f1f7 1px solid; BORDER-BOTTOM: #f9f1f7 1px solid }
.TabBox03 { BORDER-RIGHT: #f9f1f7 1px solid; BORDER-TOP: #f9f1f7 1px solid; BORDER-BOTTOM: #f9f1f7 1px solid }
.TabBox04 { BORDER-RIGHT: #f3e1f8 1px solid }
.TabBox05 { BORDER-RIGHT: #ff00a0 1px solid; BORDER-LEFT: #ff00a0 1px solid; BORDER-BOTTOM: #ff00a0 1px solid; BACKGROUND-COLOR: #fef8ff }
.TabBox06 { BORDER-RIGHT: #ab00c5 1px solid; BORDER-TOP: #ab00c5 1px solid; BORDER-LEFT: #ab00c5 1px solid; BORDER-BOTTOM: #ab00c5 1px solid; BACKGROUND-COLOR: #ffffff }
.TabBox07 { BORDER-RIGHT: #3399ff 1px solid; BORDER-TOP: #3399ff 1px solid; BORDER-LEFT: #3399ff 1px solid; BORDER-BOTTOM: #3399ff 1px solid; BACKGROUND-COLOR: #ffffff }
</STYLE>
</HEAD>
<body topmargin="50" MS_POSITIONING="GridLayout">
<table width="750" height="66" border="0" align="center">
<tr>
<td width="120" rowspan="3"><img src="Image/LOGO.jpg" width="120" align="absMiddle"></td>
<td width="520" rowspan="3"><img src="Image/top.jpg" width="520" height="60"></td>
<td width="110" height="22" align="center"><A
</tr><tr>
<td>
<img id="NewsList4__ctl7_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl7_NewsLink4" href="ShowNews.aspx?ID=44" target="_blank">绝妙淫艳对联</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl8_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl8_NewsLink4" href="ShowNews.aspx?ID=43" target="_blank">绝妙淫艳对联</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl9_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl9_NewsLink4" href="ShowNews.aspx?ID=42" target="_blank">谁横刀立马,看我彭大将军</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl10_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl10_NewsLink4" href="ShowNews.aspx?ID=41" target="_blank">往事并不如烟</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl11_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl11_NewsLink4" href="ShowNews.aspx?ID=40" target="_blank">少儿不遗</a>
</td>
</tr>
</table>
</td>
<td class="TabBox03">
<table id="NewsList5" cellspacing="0" border="0" style="border-collapse:collapse;">
<tr>
<td>
<img id="NewsList5__ctl0_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl0_NewsLink5" href="ShowNews.aspx?ID=125" target="_blank">电脑安全</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl1_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl1_NewsLink5" href="ShowNews.aspx?ID=118" target="_blank">相逢何必曾相识</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl2_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl2_NewsLink5" href="ShowNews.aspx?ID=106" target="_blank">抵制日货要从娃抓起</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl3_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl3_NewsLink5" href="ShowNews.aspx?ID=104" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl4_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl4_NewsLink5" href="ShowNews.aspx?ID=103" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl5_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl5_NewsLink5" href="ShowNews.aspx?ID=102" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl6_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl6_NewsLink5" href="ShowNews.aspx?ID=101" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl7_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl7_NewsLink5" href="ShowNews.aspx?ID=100" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl8_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl8_NewsLink5" href="ShowNews.aspx?ID=99" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl9_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl9_NewsLink5" href="ShowNews.aspx?ID=98" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl10_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl10_NewsLink5" href="ShowNews.aspx?ID=97" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl11_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl11_NewsLink5" href="ShowNews.aspx?ID=96" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td align="center"><font color="#cc0066">更多新闻......</font></td>
<td align="center"><font color="#cc0066">更多新闻......</font></td>
<td align="center"><font color="#cc0066">更多新闻......</font></td>
</tr>
</table>
</body>
</HTML>
CS文件:
StreamWriter sr = File.CreateText(@"e:\index.html");
//sr.Equals("gb2312");
sr.WriteLine(@textBox1.Text.ToString());
sr.Close();
不知为何全是乱码
#19
up
#20
UP
#21
自己写了个新闻自动生成htm的内核,
代码如下
可以生成新闻类别下新闻标题的的 htm, 可是分页不会写了!
我想搞个这样的新闻分页 要生成html的
我的代码
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
using System.IO;
using System.Text;
namespace 生成类别html
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Button Button1;
protected DataRow dr;
private void Page_Load(object sender, System.EventArgs e)
{
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public string MyFunc(string title,int i)
{
if(title.Length<i)
return title;
else
return (title.Substring(0, i) +"...");
}
private void Button1_Click(object sender, System.EventArgs e)
{
OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("news.mdb"));
string str="select * from news";
OleDbDataAdapter da=new OleDbDataAdapter(str,conn);
DataSet ds=new DataSet();
da.Fill(ds,"news");
string stt;
stt=null;
int cou =ds.Tables["news"].Rows.Count;
for(int i=0;i<cou; i++)
{
dr =ds.Tables["news"].Rows[i];
stt=stt+"@"+"<a href=111>"+MyFunc(dr["n_title"].ToString(),10)+"</a>"+"<br>";
}
StringBuilder sb=new StringBuilder();
try
{
StreamReader sr=new StreamReader(Server.MapPath("Format.html"));
string line;
while((line=sr.ReadLine())!=null)
{
sb.Append(line);
}
sr.Close();
}
catch
{
Response.Write("Read Template Eorr!");
}
sb.Replace("类别",stt);
try
{
string strServerFileName,htmpath;
strServerFileName=System.DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss");
htmpath="111"+"\\1234.Html";
StreamWriter sw=new StreamWriter(Server.MapPath(htmpath),false,System.Text.Encoding.GetEncoding("GB2312"));
sw.WriteLine(sb);
sw.Flush();
sw.Close();
Response.Redirect("/生成类别htm/111/1234.aspx");
}
catch(Exception exc)
{
Response.Write(exc.ToString());
}
}
}
}
如何加上这个功能呢~
想要类似这个的 http://www.it.com.cn/diy/core/news/index_4.html
代码如下
可以生成新闻类别下新闻标题的的 htm, 可是分页不会写了!
我想搞个这样的新闻分页 要生成html的
我的代码
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
using System.IO;
using System.Text;
namespace 生成类别html
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Button Button1;
protected DataRow dr;
private void Page_Load(object sender, System.EventArgs e)
{
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public string MyFunc(string title,int i)
{
if(title.Length<i)
return title;
else
return (title.Substring(0, i) +"...");
}
private void Button1_Click(object sender, System.EventArgs e)
{
OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("news.mdb"));
string str="select * from news";
OleDbDataAdapter da=new OleDbDataAdapter(str,conn);
DataSet ds=new DataSet();
da.Fill(ds,"news");
string stt;
stt=null;
int cou =ds.Tables["news"].Rows.Count;
for(int i=0;i<cou; i++)
{
dr =ds.Tables["news"].Rows[i];
stt=stt+"@"+"<a href=111>"+MyFunc(dr["n_title"].ToString(),10)+"</a>"+"<br>";
}
StringBuilder sb=new StringBuilder();
try
{
StreamReader sr=new StreamReader(Server.MapPath("Format.html"));
string line;
while((line=sr.ReadLine())!=null)
{
sb.Append(line);
}
sr.Close();
}
catch
{
Response.Write("Read Template Eorr!");
}
sb.Replace("类别",stt);
try
{
string strServerFileName,htmpath;
strServerFileName=System.DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss");
htmpath="111"+"\\1234.Html";
StreamWriter sw=new StreamWriter(Server.MapPath(htmpath),false,System.Text.Encoding.GetEncoding("GB2312"));
sw.WriteLine(sb);
sw.Flush();
sw.Close();
Response.Redirect("/生成类别htm/111/1234.aspx");
}
catch(Exception exc)
{
Response.Write(exc.ToString());
}
}
}
}
如何加上这个功能呢~
想要类似这个的 http://www.it.com.cn/diy/core/news/index_4.html
#22
帮顶
#23
up
#24
转为html有什么好处呢?
#25
up
#1
如果你的页操作逻辑比较复杂的话,我看根本不可能..因为好多操作都是要POST回去,然后结合VIEWSTATE生成的客户端代码.每次操作生成的都是不一样的..所以生成一个页面根本不行..除非你把ASPX转成ASP页面..
#2
我这样试过。执行aspx文件,查看->源文件,然后用记事本保存为html文件,没有问题.
#3
生成静态估计有点难..microsoft网站大多也不是静态的..
#4
这样的静态页面不是纯静态,浪费了很多数据
#5
这个网站www.jxsoufun.cn用的是xhtml+css也是生成静态页,包括新闻,我想应该差不多是这个样子
#6
http://community.csdn.net/Expert/topic/3621/3621193.xml?temp=.6931421
#7
那么我有一个网页的源代码,我该如何通过程序把它写成html文件呢?
#8
那么我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#9
www.jxsoufun.cn用的是xhtml+css
请问他后台是.net的?是用ASP.net写的吗?
请问他后台是.net的?是用ASP.net写的吗?
#10
他的后台应该是asp因为我看他的网站有很多的asp文件,他首页的各个栏目都是生成
静态页,我想可能他是,比如果一个栏目要加新闻,就把这个栏目生成静态页,然
后首页就用iframe将各栏目组合起来,这样的话首页就永远不用生成
那么我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#11
你将他的首页另存为,然后打开文件夹,就能有所发现
#12
关注中
#13
看来高手还都在睡觉呀
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#14
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
我有一个网页的源代码,我该如何通过程序把它写成html文件呢?(用C#)
#15
FileStream stream = new FileStream(......htm)//打开要写入的html文件
TextWriter writer = new TextWriter( ....... stream ........ )//创建一个TextWriter用于写
System.Web.UI.HtmlTextWriter hwriter = new HtmlTextWriter( ...... writer ...... )//创建一个HtmlTextWriter用于给控件写入HTML。
using ( StreamReader aspxReader = new StreamReader( .....aspx ) )//打开aspx文件
{ System.Web.UI.Control control = new System.Web.UI.Page().ParseControl( aspxReader.ReadToEnd ); }//分析aspx文件
control.ReaderControl( hwriter );//写入。
stream.Dispose();//关闭文件
我不喜欢贴代码,但这也已经够详细了。
TextWriter writer = new TextWriter( ....... stream ........ )//创建一个TextWriter用于写
System.Web.UI.HtmlTextWriter hwriter = new HtmlTextWriter( ...... writer ...... )//创建一个HtmlTextWriter用于给控件写入HTML。
using ( StreamReader aspxReader = new StreamReader( .....aspx ) )//打开aspx文件
{ System.Web.UI.Control control = new System.Web.UI.Page().ParseControl( aspxReader.ReadToEnd ); }//分析aspx文件
control.ReaderControl( hwriter );//写入。
stream.Dispose();//关闭文件
我不喜欢贴代码,但这也已经够详细了。
#16
在 Web 窗体页上写出一系列连续的 HTML 特定字符和文本。此类提供 ASP.NET 服务器控件在将 HTML 内容呈现给客户端时所使用的格式化功能。
script language="C#" runat="server">
const int maxRows = 3;
const int maxCols = 5;
protected override void Render(HtmlTextWriter writer) {
writer.WriteFullBeginTag("html");
writer.WriteLine();
writer.WriteFullBeginTag("body");
writer.WriteLine();
writer.WriteFullBeginTag("h1");
writer.Write("Using the HtmlTextWriterClass");
writer.WriteEndTag("h1");
writer.WriteLine();
// ...
writer.WriteBeginTag("table");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontWeight, "bold");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, "verdana");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontSize, "14pt");
writer.WriteAttribute("border","1");
writer.Write(HtmlTextWriter.TagRightChar);
writer.WriteLine();
writer.Indent++;
for (int i=0; i<maxRows; i++) {
writer.WriteFullBeginTag("tr");
writer.WriteLine();
writer.Indent++;
for (int j=0; j<maxCols; j++) {
writer.WriteBeginTag("td");
writer.WriteAttribute("valign","top");
writer.WriteAttribute("bgcolor","lightblue");
writer.Write(HtmlTextWriter.TagRightChar);
writer.Write("Cell (" + i.ToString() + "," + j.ToString() + ")" );
writer.WriteEndTag("td");
writer.WriteLine();
}
writer.Indent--;
writer.WriteEndTag("tr");
writer.WriteLine();
}
writer.Indent--;
// ...
writer.WriteEndTag("table");
writer.WriteLine();
writer.WriteEndTag("body");
writer.WriteLine();
writer.WriteEndTag("html");
}
</script>
script language="C#" runat="server">
const int maxRows = 3;
const int maxCols = 5;
protected override void Render(HtmlTextWriter writer) {
writer.WriteFullBeginTag("html");
writer.WriteLine();
writer.WriteFullBeginTag("body");
writer.WriteLine();
writer.WriteFullBeginTag("h1");
writer.Write("Using the HtmlTextWriterClass");
writer.WriteEndTag("h1");
writer.WriteLine();
// ...
writer.WriteBeginTag("table");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontWeight, "bold");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, "verdana");
writer.AddStyleAttribute(HtmlTextWriterStyle.FontSize, "14pt");
writer.WriteAttribute("border","1");
writer.Write(HtmlTextWriter.TagRightChar);
writer.WriteLine();
writer.Indent++;
for (int i=0; i<maxRows; i++) {
writer.WriteFullBeginTag("tr");
writer.WriteLine();
writer.Indent++;
for (int j=0; j<maxCols; j++) {
writer.WriteBeginTag("td");
writer.WriteAttribute("valign","top");
writer.WriteAttribute("bgcolor","lightblue");
writer.Write(HtmlTextWriter.TagRightChar);
writer.Write("Cell (" + i.ToString() + "," + j.ToString() + ")" );
writer.WriteEndTag("td");
writer.WriteLine();
}
writer.Indent--;
writer.WriteEndTag("tr");
writer.WriteLine();
}
writer.Indent--;
// ...
writer.WriteEndTag("table");
writer.WriteLine();
writer.WriteEndTag("body");
writer.WriteLine();
writer.WriteEndTag("html");
}
</script>
#17
我的意思这个TextBox里面以经有了源代码,我想把这个代码生成为html文件
#18
错误在这里看看
不知为何全是乱码
TextBox内容:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>首页</title>
<meta http-equiv=content-type content="text/html; charset=gb2312">
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<SCRIPT language="JavaScript">
<!--弹出站长热线消息框
<!--
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
function MM_popupMsg(msg) { //v1.0
alert(msg);
}
//-->
</SCRIPT>
<STYLE type="text/css">BODY { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 12px; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #000000; PADDING-TOP: 0px; BACKGROUND-COLOR: #ffffff; TEXT-ALIGN: center }
TD { FONT-SIZE: 12px }
FORM { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px }
INPUT { FONT-SIZE: 12px; COLOR: #333333 }
SELECT { FONT-SIZE: 12px; COLOR: #333333 }
A:link { COLOR: #00007f }
A:visited { COLOR: #65038e }
A:hover { COLOR: #ff0000 }
A:active { COLOR: #ff0000 }
.TabBox01 { BACKGROUND-COLOR: #fb44bb }
.TabBox02 { BORDER-RIGHT: #f9f1f7 1px solid; BORDER-TOP: #f9f1f7 1px solid; BORDER-LEFT: #f9f1f7 1px solid; BORDER-BOTTOM: #f9f1f7 1px solid }
.TabBox03 { BORDER-RIGHT: #f9f1f7 1px solid; BORDER-TOP: #f9f1f7 1px solid; BORDER-BOTTOM: #f9f1f7 1px solid }
.TabBox04 { BORDER-RIGHT: #f3e1f8 1px solid }
.TabBox05 { BORDER-RIGHT: #ff00a0 1px solid; BORDER-LEFT: #ff00a0 1px solid; BORDER-BOTTOM: #ff00a0 1px solid; BACKGROUND-COLOR: #fef8ff }
.TabBox06 { BORDER-RIGHT: #ab00c5 1px solid; BORDER-TOP: #ab00c5 1px solid; BORDER-LEFT: #ab00c5 1px solid; BORDER-BOTTOM: #ab00c5 1px solid; BACKGROUND-COLOR: #ffffff }
.TabBox07 { BORDER-RIGHT: #3399ff 1px solid; BORDER-TOP: #3399ff 1px solid; BORDER-LEFT: #3399ff 1px solid; BORDER-BOTTOM: #3399ff 1px solid; BACKGROUND-COLOR: #ffffff }
</STYLE>
</HEAD>
<body topmargin="50" MS_POSITIONING="GridLayout">
<table width="750" height="66" border="0" align="center">
<tr>
<td width="120" rowspan="3"><img src="Image/LOGO.jpg" width="120" align="absMiddle"></td>
<td width="520" rowspan="3"><img src="Image/top.jpg" width="520" height="60"></td>
<td width="110" height="22" align="center"><A
</tr><tr>
<td>
<img id="NewsList4__ctl7_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl7_NewsLink4" href="ShowNews.aspx?ID=44" target="_blank">绝妙淫艳对联</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl8_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl8_NewsLink4" href="ShowNews.aspx?ID=43" target="_blank">绝妙淫艳对联</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl9_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl9_NewsLink4" href="ShowNews.aspx?ID=42" target="_blank">谁横刀立马,看我彭大将军</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl10_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl10_NewsLink4" href="ShowNews.aspx?ID=41" target="_blank">往事并不如烟</a>
</td>
</tr><tr>
<td>
<img id="NewsList4__ctl11_Image3" src="Image/jt0.Gif" border="0" />
<a id="NewsList4__ctl11_NewsLink4" href="ShowNews.aspx?ID=40" target="_blank">少儿不遗</a>
</td>
</tr>
</table>
</td>
<td class="TabBox03">
<table id="NewsList5" cellspacing="0" border="0" style="border-collapse:collapse;">
<tr>
<td>
<img id="NewsList5__ctl0_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl0_NewsLink5" href="ShowNews.aspx?ID=125" target="_blank">电脑安全</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl1_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl1_NewsLink5" href="ShowNews.aspx?ID=118" target="_blank">相逢何必曾相识</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl2_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl2_NewsLink5" href="ShowNews.aspx?ID=106" target="_blank">抵制日货要从娃抓起</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl3_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl3_NewsLink5" href="ShowNews.aspx?ID=104" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl4_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl4_NewsLink5" href="ShowNews.aspx?ID=103" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl5_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl5_NewsLink5" href="ShowNews.aspx?ID=102" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl6_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl6_NewsLink5" href="ShowNews.aspx?ID=101" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl7_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl7_NewsLink5" href="ShowNews.aspx?ID=100" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl8_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl8_NewsLink5" href="ShowNews.aspx?ID=99" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl9_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl9_NewsLink5" href="ShowNews.aspx?ID=98" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl10_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl10_NewsLink5" href="ShowNews.aspx?ID=97" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr><tr>
<td>
<img id="NewsList5__ctl11_Image5" src="Image/jt0.Gif" border="0" />
<a id="NewsList5__ctl11_NewsLink5" href="ShowNews.aspx?ID=96" target="_blank">鸣扬新闻发布系统测试版?</a>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td align="center"><font color="#cc0066">更多新闻......</font></td>
<td align="center"><font color="#cc0066">更多新闻......</font></td>
<td align="center"><font color="#cc0066">更多新闻......</font></td>
</tr>
</table>
</body>
</HTML>
CS文件:
StreamWriter sr = File.CreateText(@"e:\index.html");
//sr.Equals("gb2312");
sr.WriteLine(@textBox1.Text.ToString());
sr.Close();
不知为何全是乱码
#19
up
#20
UP
#21
自己写了个新闻自动生成htm的内核,
代码如下
可以生成新闻类别下新闻标题的的 htm, 可是分页不会写了!
我想搞个这样的新闻分页 要生成html的
我的代码
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
using System.IO;
using System.Text;
namespace 生成类别html
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Button Button1;
protected DataRow dr;
private void Page_Load(object sender, System.EventArgs e)
{
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public string MyFunc(string title,int i)
{
if(title.Length<i)
return title;
else
return (title.Substring(0, i) +"...");
}
private void Button1_Click(object sender, System.EventArgs e)
{
OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("news.mdb"));
string str="select * from news";
OleDbDataAdapter da=new OleDbDataAdapter(str,conn);
DataSet ds=new DataSet();
da.Fill(ds,"news");
string stt;
stt=null;
int cou =ds.Tables["news"].Rows.Count;
for(int i=0;i<cou; i++)
{
dr =ds.Tables["news"].Rows[i];
stt=stt+"@"+"<a href=111>"+MyFunc(dr["n_title"].ToString(),10)+"</a>"+"<br>";
}
StringBuilder sb=new StringBuilder();
try
{
StreamReader sr=new StreamReader(Server.MapPath("Format.html"));
string line;
while((line=sr.ReadLine())!=null)
{
sb.Append(line);
}
sr.Close();
}
catch
{
Response.Write("Read Template Eorr!");
}
sb.Replace("类别",stt);
try
{
string strServerFileName,htmpath;
strServerFileName=System.DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss");
htmpath="111"+"\\1234.Html";
StreamWriter sw=new StreamWriter(Server.MapPath(htmpath),false,System.Text.Encoding.GetEncoding("GB2312"));
sw.WriteLine(sb);
sw.Flush();
sw.Close();
Response.Redirect("/生成类别htm/111/1234.aspx");
}
catch(Exception exc)
{
Response.Write(exc.ToString());
}
}
}
}
如何加上这个功能呢~
想要类似这个的 http://www.it.com.cn/diy/core/news/index_4.html
代码如下
可以生成新闻类别下新闻标题的的 htm, 可是分页不会写了!
我想搞个这样的新闻分页 要生成html的
我的代码
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.OleDb;
using System.IO;
using System.Text;
namespace 生成类别html
{
/// <summary>
/// WebForm1 的摘要说明。
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Button Button1;
protected DataRow dr;
private void Page_Load(object sender, System.EventArgs e)
{
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public string MyFunc(string title,int i)
{
if(title.Length<i)
return title;
else
return (title.Substring(0, i) +"...");
}
private void Button1_Click(object sender, System.EventArgs e)
{
OleDbConnection conn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("news.mdb"));
string str="select * from news";
OleDbDataAdapter da=new OleDbDataAdapter(str,conn);
DataSet ds=new DataSet();
da.Fill(ds,"news");
string stt;
stt=null;
int cou =ds.Tables["news"].Rows.Count;
for(int i=0;i<cou; i++)
{
dr =ds.Tables["news"].Rows[i];
stt=stt+"@"+"<a href=111>"+MyFunc(dr["n_title"].ToString(),10)+"</a>"+"<br>";
}
StringBuilder sb=new StringBuilder();
try
{
StreamReader sr=new StreamReader(Server.MapPath("Format.html"));
string line;
while((line=sr.ReadLine())!=null)
{
sb.Append(line);
}
sr.Close();
}
catch
{
Response.Write("Read Template Eorr!");
}
sb.Replace("类别",stt);
try
{
string strServerFileName,htmpath;
strServerFileName=System.DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss");
htmpath="111"+"\\1234.Html";
StreamWriter sw=new StreamWriter(Server.MapPath(htmpath),false,System.Text.Encoding.GetEncoding("GB2312"));
sw.WriteLine(sb);
sw.Flush();
sw.Close();
Response.Redirect("/生成类别htm/111/1234.aspx");
}
catch(Exception exc)
{
Response.Write(exc.ToString());
}
}
}
}
如何加上这个功能呢~
想要类似这个的 http://www.it.com.cn/diy/core/news/index_4.html
#22
帮顶
#23
up
#24
转为html有什么好处呢?
#25
up