63 lines
2.1 KiB
C#
63 lines
2.1 KiB
C#
using System.Net;
|
|
|
|
namespace PdbServer.Controllers
|
|
{
|
|
public class Helpers
|
|
{
|
|
public static bool DownloadFile(string URL, string filename)
|
|
{
|
|
if(File.Exists(filename))
|
|
{
|
|
File.Delete(filename);
|
|
}
|
|
try
|
|
{
|
|
HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(URL);
|
|
HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse();
|
|
Stream st = myrp.GetResponseStream();
|
|
Stream so = new System.IO.FileStream(filename, System.IO.FileMode.Create);
|
|
byte[] by = new byte[1024];
|
|
int osize = st.Read(by, 0, (int)by.Length);
|
|
while (osize > 0)
|
|
{
|
|
so.Write(by, 0, osize);
|
|
osize = st.Read(by, 0, (int)by.Length);
|
|
}
|
|
so.Close();
|
|
st.Close();
|
|
myrp.Close();
|
|
Myrq.Abort();
|
|
return true;
|
|
}
|
|
catch (System.Exception e)
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
public static byte[] HttpDownload(string url)
|
|
{
|
|
try
|
|
{
|
|
MemoryStream ms = new MemoryStream();
|
|
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
|
|
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
|
|
Stream responseStream = response.GetResponseStream();
|
|
byte[] bArr = new byte[1024];
|
|
int size = responseStream.Read(bArr, 0, (int)bArr.Length);
|
|
while (size > 0)
|
|
{
|
|
ms.Write(bArr, 0, size);
|
|
size = responseStream.Read(bArr, 0, (int)bArr.Length);
|
|
}
|
|
ms.Close();
|
|
responseStream.Close();
|
|
return ms.GetBuffer();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
}
|
|
}
|