DiscuzNT 方法: Discuz.Common中 Utils.cs类
///<summary>
///转换为静态html
///</summary>
public void transHtml(string path, string outpath)
{
Page page = new Page();
StringWriter writer = new StringWriter();
page.Server.Execute(path, writer);
FileStream fs;
if (File.Exists(page.Server.MapPath("") + "\\" + outpath))
{
File.Delete(page.Server.MapPath("") + "\\" + outpath);
fs = File.Create(page.Server.MapPath("") + "\\" + outpath);
}
else
{
fs = File.Create(page.Server.MapPath("") + "\\" + outpath);
}
byte[] bt = Encoding.Default.GetBytes(writer.ToString());
fs.Write(bt, 0, bt.Length);
fs.Close();
}
调用: transHtml("default.aspx", "default.html");
但是这个方法生成会产生乱码。下面的全新的方法不会产生乱码噢~~
///<summary>
///转换为静态html
///</summary>
public void transHtml(string path, string outpath)
{
Page page = new Page();
StreamWriter mWriter = new StreamWriter(page.Server.MapPath("") + "\\" + outpath, false, System.Text.Encoding.UTF8);
StringWriter gWriter = new StringWriter();
page.Server.Execute(path, gWriter);
string str = System.Text.Encoding.UTF8.GetString(Encoding.UTF8.GetBytes(gWriter.ToString()));
mWriter.WriteLine(str);
mWriter.Flush();
mWriter.Close();
}
我最近在玩和讯财经微博,很方便,很实用。
一句话,一张图,随时随地与我分享理财心得与亲历见闻。
点击以下链接激活,来和我一起玩吧!
http://t.hexun.com/active.aspx?InviteCode=vgHnLwTTuTjrgTw%2fP7b6%2fA%3d%3d