Hi,
Please refer below code.
C#
string filepath = @"C:\fileName.rar";
string filename = Path.GetFileName(filepath);
Stream stream = null;
try
{
stream = new FileStream(filepath, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.Read);
long bytesToRead = stream.Length;
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + filename); //You can set filename here
while (bytesToRead > 0)
{
if (Response.IsClientConnected)
{
byte[] buffer = new Byte[10000];
int length = stream.Read(buffer, 0, 10000);
Response.OutputStream.Write(buffer, 0, length);
Response.Flush();
bytesToRead = bytesToRead - length;
}
else
{
bytesToRead = -1;
}
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
if (stream != null)
{
stream.Close();
}
}
VB
Dim filepath As String = "C:\fileName.rar"
Dim filename As String = Path.GetFileName(filepath)
Dim stream As Stream = Nothing
Try
stream = New FileStream(filepath, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.Read)
Dim bytesToRead As Long = stream.Length
Response.ContentType = "application/octet-stream"
Response.AddHeader("Content-Disposition", Convert.ToString("attachment; filename=") & filename)
While bytesToRead > 0
If Response.IsClientConnected Then
Dim buffer As Byte() = New [Byte](9999) {}
Dim length As Integer = stream.Read(buffer, 0, 10000)
Response.OutputStream.Write(buffer, 0, length)
Response.Flush()
bytesToRead = bytesToRead - length
Else
bytesToRead = -1
End If
End While
Catch ex As Exception
Response.Write(ex.Message)
Finally
If stream IsNot Nothing Then
stream.Close()
End If
End Try
I hope this will help you out.