lunes, enero 14, 2008

La simplicidad de C#

Despues de estar aca aprendiendo en TVEEZ sobre lo que es el manejo de xaml en el framework de .Net 3.0, decidi por mi propia cuenta hacer una aplicacion que estaba planeando programar, pero que no la habia echo debido a estar ocupado con ciertas cosas el caso es que la aplicacion consistia en traerme la foto del dia de www.explosm.net/comics para asi evitarme entrar a la pagina y ver propaganda >_>

La aplicacion esta desarrollada parcialmente en C# con xaml en la capa de presentacion.

Codigo Xaml para la parte de presentacion de la aplicacion

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:src="clr-namespace:WPFStaticResourceTest" Title="Prueba" Height="537" Width="667" HorizontalAlignment="Center">

Y para la parte de la logica se implemento en C# Con cosas tan sencillas como es el hecho de hacer una peticion de GET para la pagina que queremos visitar (www.explosm.net/comics)

StreamReader objReader = new StreamReader(objStream);
string sLine = "";

int i = 0;
while (sLine != null)
{
i++;
s
Line = objReader.ReadLine();
if (sLine != null)
{
pageContent = pageContent + " " + sLine;

}
}

Con esta pequeñez de codigo recibimos toda el codigo html de Explosm y lo guardamos en una string, ahora la unica tarea que nos queda es simplemente parsear dicho codigo para buscar la foto y mostrala en la aplicacion.

private string searchForPicture(string s){
//Cyanide and Happiness, a daily webcomic

int index = s.IndexOf(" img alt=\"Cyanide and Happiness, a daily webcomic\" src=\"")
int count = 0;

while(s[index+count] != '\"'){
count++;

}
string urlPic = s.Substring(index, count);

return urlPic;
}

Asi llevamos a cabo la tarea de sacar el string que nos interesa, que es la direccion de la foto.


Ahora lo mas interesante, con esta instruccion mostramos el contenido de la foto, sin importar en que formato este, y de donde venga



Finalmente la aplicacion se ve asi ^_^:


Lo mas chistoso es que yo no sabiendo casi nada de C# pude realizar esta aplicacion en practicamente una mañana de trabajo, me tiene impresionado la facilidad como salen las cosas en .net.

No hay comentarios.: