Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo implementar hacer clic para descargar, obtener la ruta del archivo y descargarlo en vb.net

Cómo implementar hacer clic para descargar, obtener la ruta del archivo y descargarlo en vb.net

Descargue, lea el archivo directamente desde la URL y luego Response.OutputStream.Write() los datos

El siguiente es el método estático descargado en C# como referencia: ///? lt; resumengt ;

//?Descargar archivo

//? lt;/summarygt;

//? lt;param?name="nombre de archivo" gt;Descargar El nombre del archivo (incluida la extensión)lt;/paramgt;

//?lt;param?name="filePath"gt;La ruta absoluta para descargar el archivolt;/paramgt;

public?filePath)

{

//Abra el archivo que desea descargar y guárdelo en FileStream

System.IO. FileStream?OpenRead(filePath);

/Los bytes restantes del archivo a transferir: el valor inicial del tamaño total del archivo

long?Length?=?Reader.Length;

HttpContext .Current.Response.Buffer?=?false;

HttpContext.Current.Response.AddHeader("Conexión").

AddHeader("Connection",?"Keep-Alive");

HttpContext.Current.Response.ContentType?=?"application/octet-stream";

HttpContext.Current. Response.Charset?=??" utf-8";

HttpContext.Current.Response.AddHeader("Content-Disposition",?" adjunto;?filename="? ?System.Web.HttpUtility. UrlEncode(fileName));

HttpContext.Current.Response.AddHeader("Content-Length",?Length.ToString());

byte[]? Buffer?//El número de bytes realmente leídos cada vez

while(Length?gt;?0)

{ // Cuando el número restante de bytes no es cero, continúa la transmisión

if(HttpContext.Current.Response.OutputStream.Write(Buffer,?0,?ByteToRead);

//Escribe datos desde el búfer en el navegador del cliente

p>

HttpContext.Current.Response.Flush();?

Longitud?-=?ByteToRead //bytes restantes reducidos}

else

{?

//El navegador del cliente se desconecta, impidiendo que el bucle continúe

Longitud?=?-1;

}

}

}//Cerrar el archivo

Reader.Close();

}

QQ: 12119551