El primero es el reemplazo de plantilla:
Entorno: Microsoft .NET Framework SDK v1.1
SO: Windows Server 2003 versión china
ASP.Net genera páginas HTML estáticas. ¡El objeto FileSystemObject utilizado para generar páginas estáticas está implementado en Asp!
El que participa en este tipo de operaciones en .Net es System.IO
El siguiente es el código del programa. Nota: ¡Este código no es original! Consulte los códigos de otras personas.
//Generar página HTML
bool estático público WriteFile (cadena strText, cadena strContent, cadena strAuthor)
{
ruta de cadena = HttpContext.Current.Server.MapPath("/noticias/");
Código de codificación = Codificación.GetEncoding("gb2312");
//Leer archivo de plantilla
cadena temporal = HttpContext.Current.Server.MapPath("/news/text.html");
StreamReader sr=nulo;
StreamWriter sw=null;
cadena cadena="";
intentar
{
sr = nuevo StreamReader(temp, código);
str = sr.ReadToEnd(); // Leer el archivo
}
captura (Excepción exp)
{
HttpContext.Current.Response.Write(exp.Mensaje);
HttpContext.Current.Response.End();
sr.Cerrar();
}
string htmlfilename=DateTime.Now.ToString("aaaaMMddHHmmss")+".html";
// Reemplazar contenido
// En este momento, el archivo de plantilla se ha leído en la variable denominada str.
str =str.Replace("ShowArticle",strText); //Mostrar artículo en la página de plantilla
str = str.Replace("biaoti",strText);
str = str.Replace("contenido",strContent);
str = str.Replace("autor",strAuthor);
//escribir archivo
intentar
{
sw = new StreamWriter(ruta + nombre de archivo html, falso, código);
sw.Write(cadena);
sw.Flush();
}
captura (Excepción ex)
{
HttpContext.Current.Response.Write(ex.Message);
HttpContext.Current.Response.End();
}
finalmente
{
sw.Cerrar();
}
devuelve verdadero;
esta función se coloca en la clase base Conn.CS y
se hace referencia en el código para agregar noticias. Nota: el nombre del proyecto es Hover
if (Hover.Conn.WriteFilethis.Title.Text.ToString), this.Content. Text.ToString), este.Author.Text.ToString)))
{
Response.Write("Agregado exitosamente");
}
demás
{
Response.Write("¡Error al generar HTML!");
}
Página de plantilla Código Text.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<CABEZA>
<título>Mostrar artículo</título>
<cuerpo>
biaoti
<br>
contenido<br>
autor
</cuerpo>
</HTML>
biaoti
<br>
contenido<br>
autor
</cuerpo>
</HTML>
Después de que el mensaje se agregue correctamente, aparecerá un archivo html con la hora actual como nombre de archivo. ¡Lo anterior simplemente escribe los parámetros pasados directamente en el archivo HTML!
En aplicaciones reales, primero debe agregar la base de datos y luego escribir el archivo HTML.
El segundo tipo:
WebRequest accede a la página aspx, luego obtiene el flujo de respuesta y obtiene html
botón de anulación privado1_Click (remitente del objeto, System.EventArgs e)
{
textBox1.Text=this.GetUrlValue(" http://SuUrl ");
}
//Utiliza HttpWebRequest para obtener el valor de retorno de la URL
cadena pública GetUrlValue (URL de cadena)
{
System.Net.WebRequest HttpWebRequest=System.Net.WebRequest.Create(url);
System.Net.WebResponse HttpWebResponse =HttpWebRequest.GetResponse();
System.IO.StreamReader sr=new System.IO.StreamReader(HttpWebResponse.GetResponseStream(), System.Text.Encoding.GetEncoding("GB2312"));
devolver sr.ReadToEnd();
}