viernes, diciembre 02, 2005

[C#] Sacar un archivo de un recurso embebido y crearlo

Bueno aca hay un codigo que necesite usar para sacar un recurso embebido (embedded resource) , y crearlo como archivo en un directorio. En mi caso este archivo fue un zip. Y despues lo descomprimi con SharpZipLib.


//Levanta el resource y crea el archivo, en el directorio
//res = El resource que se va a crear como arhivo
//arch = Nombre del nuevo archivo
public void LevantarResource(string res, string arch)
{
System.IO.Stream st= GetType().Assembly.GetManifestResourceStream(res);
if(File.Exists(arch))
File.Delete(arch);

FileStream fs = new FileStream(arch,FileMode.Create, FileAccess.Write);
if ( st != null )
{
// Creo el Buffer
byte[] buffer = new byte[1024];
int readCnt = 0;
//escribo en el archivo
while ( (readCnt = st.Read(buffer,0,buffer.Length)) > 0 )
{
fs.Write(buffer,0,readCnt);
}
// close the streams
st.Close();
fs.Close();
}
}

No hay comentarios.: