Dropbox API Descarga de un archivo utilizando la biblioteca de Dropbox .NET con seguimiento de progreso


Ejemplo

Esto utiliza el Dropbox .NET SDK para descargar un archivo de la API de Dropbox en la path remota al archivo local "Prueba", mientras se realiza el seguimiento del progreso:

var response = await client.Files.DownloadAsync(path);
ulong fileSize = response.Response.Size;
const int bufferSize = 1024 * 1024;

var buffer = new byte[bufferSize];

using (var stream = await response.GetContentAsStreamAsync())
{
    using (var file = new FileStream("Test", FileMode.OpenOrCreate))
    {
        var length = stream.Read(buffer, 0, bufferSize);

        while (length > 0)
        {
            file.Write(buffer, 0, length);
            var percentage = 100 * (ulong)file.Length / fileSize;
            // Update progress bar with the percentage.
            // progressBar.Value = (int)percentage
            Console.WriteLine(percentage);

            length = stream.Read(buffer, 0, bufferSize);
        }
    }
}