Quiero integrar noticias RSS de otros sitios web en mi propia página web. Acabo de aprender a hacerlo, pero nunca he podido hacerlo. ¡Finalmente lo logré hoy! ¡Quizás este método sea un poco estúpido! La idea es descargar el archivo XML al local y luego leer el XML local. ¡Eso es fácil! No sé si hay una manera más fácil, ¡espero que los expertos puedan iluminarme!
El código central es el siguiente:
(Use webRequest para obtener el contenido de la página especificada y luego use FileStream para escribirlo en un archivo local)
Parte principal (¡descargue el archivo XML del enlace RSS al local!)
descarga privada vacía_Click (remitente del objeto, System.EventArgs e)
{
Codificación sjis = Codificación.GetEncoding("utf-8");
FileStream fs = new FileStream(Server.MapPath(".")+" \sina.xml",FileMode.Create,FileAccess.Write );
//Crea StreamWriter para prepararte para escribir
StreamWriter rw = nuevo StreamWriter(fs,sjis);
cuerda;
//Crear objeto WebRequest
WebRequest myReq = WebRequest.Create(" http://rss.sina.com.cn/news/marquee/ddt.xml");// Lea el archivo remoto (Sina News) y luego use FileStream para guardar el archivo localmente !
//Crear objeto WebResponse
WebResponse myRes = myReq.GetResponse();
//Obtener transmisión
Corriente resStream = myRes.GetResponseStream();
// Las siguientes operaciones son para leer el contenido del objeto Stream
StreamReader sr = nuevo StreamReader(resStream,sjis);
StringBuilder sb = nuevo StringBuilder();
mientras((rl=sr.ReadLine())!=nulo)
{
rw.WriteLine(rl);
}
myRes.Close();
rw.Flush();
//Cierra el objeto rw
rw.Cerrar();
fs.Cerrar();
msg.Text="¡Descarga exitosa!";
}
¡Puedes agregar un juicio en el programa, una vez cada pocas horas o una vez al día!