Introduction
Today, I am demonstrating a down loader in ASP.net using with System.Web.WebRequest and System.Web.WebResponse method, if we need to start download on specific length then we can add request range using with Request.Addrange(10000,50000).![]() |
| Down loader in ASP.Net |
Namespace C#
using System.IO; using System.Web; using System.Configuration;
Namespace VB.Net
Imports System.IO Imports System.Web Imports System.Configuration Imports System.ExceptionWe can provide file size here, so all the bytes streams will be downloaded properly.
I have made web request using HTTPWebRequest method:
HTTPWebRequest method:
System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(str);
Request Timeout
You can set request timeout as follows:
request.Timeout = 30000000;
request.Timeout = 30000000;
Read Buffer Size
int read = strm.Read(inBuf, 0, inBuf.Length);
Here we can provide to read file from 0 bytes to up to your requirement.
Start VB.Net Code Snippet
Private Sub DownloadCode()
Try
Dim filesize As Integer = 9899267
Dim fs As FileStream = New FileStream("C:\downloadfolder\1.mp3", FileMode.Create, FileAccess.Write)
Dim file_start As Integer = 0
Dim file_end As Integer = filesize
Dim strm As Stream = Nothing
Dim offset As Integer = 0
While file_end >= file_start
Dim str As String = "http://www.downloaddomain.net/abc/1.mp3"
'daisy server --- dbt_001
Dim request As System.Net.HttpWebRequest = CType(System.Net.HttpWebRequest.Create(str), System.Net.HttpWebRequest)
'Dim request As System.Net.HttpWebRequest = WebRequest.Create(str)
request.Timeout = 30000000
Dim inBuf(4095) As Byte 'for dtb_001
Dim bytesToRead As Integer = CInt(inBuf.Length)
Dim bytesRead As Integer = 0
Dim response As System.Net.HttpWebResponse = CType(request.GetResponse(), System.Net.HttpWebResponse)
'Dim response As HttpWebResponse = request.GetResponse()
strm = response.GetResponseStream()
Dim read As Integer = strm.Read(inBuf, 0, inBuf.Length)
fs.Write(inBuf, 0, read)
offset += read
If offset >= file_end Then
Exit While
Else
file_start += 4095
End If
request.Abort()
response.Close()
End While
MessageBox.Show("file Downloaded successfully")
Catch ex As Exception
MessageBox.Show("file download unsuccessful" & ex.Message)
End Try
End Sub
C# Down loader code
Private void DownloadCode()
{
try
{
int filesize = 9899267;
FileStream fs = new FileStream("C:\\downloadfolder\\1.mp3", FileMode.Create, FileAccess.Write);
int file_start = 0;
int file_end = filesize;
Stream strm = null;
int offset = 0;
while (file_end >= file_start) {
string str = "http://www.downloaddomain.net/abc/1.mp3";
//
System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(str);
//Dim request As System.Net.HttpWebRequest = WebRequest.Create(str)
request.Timeout = 30000000;
byte[] inBuf = new byte[4096];
//for dtb_001
int bytesToRead = Convert.ToInt32(inBuf.Length);
int bytesRead = 0;
System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse();
//Dim response As HttpWebResponse = request.GetResponse()
strm = response.GetResponseStream();
int read = strm.Read(inBuf, 0, inBuf.Length);
fs.Write(inBuf, 0, read);
offset += read;
if (offset >= file_end) {
break; // TODO: might not be correct. Was : Exit While
}
else
{
file_start += 4095;
}
request.Abort();
response.Close();
}
MessageBox.Show("file Downloaded successfully");
}
catch (Exception ex)
{
MessageBox.Show("file download unsuccessful" + ex.Message);
}
}


Post A Comment:
0 comments: