Brno? Vypsali jsme pro vás nové termíny školení Základů programování a OOP v Brně!

Diskuze: C# Console progress bar

Aktivity (4)
Avatar
Duplicate
Člen
Avatar
Duplicate:8. května 15:10

Ahoj,

Měl bych menší problém se kterým už si nevím rady.

Udělal jsem funkci, která stahuje soubory z FTP, využívá FluentFTP viz.: https://github.com/…ks/FluentFTP#…

Dle dokumentace lze mít atribut progress a ukazovat momentální stav stahování, jenže bych to potřeboval mít v consoli a nic jako Progressbar v konzoli není, tak jsem našel tuhle funkci:

https://gist.github.com/…32a285f0c76a

Moje funkce na stahování vypadá nějak takto:

 public static void DownloadFileFromFTP(string ip, string RemoteFilePath, string LocalFilePath, string username, string password)
        {

            try
            {

                ProgressBar progressBar;

                Progress<double> progress = new Progress<double>(x => {
                    if (x > 0)
                    {
                        progressBar.Report((double)x / 100);
                    }
                });

                FtpClient client = new FtpClient(ip);
                client.Credentials = new NetworkCredential(username, password);
                client.Connect();

                progressBar = new ProgressBar();
                client.DownloadFile(LocalFilePath, RemoteFilePath, FtpLocalExists.Overwrite, FluentFTP.FtpVerify.Retry);
                progressBar.Dispose();

            }
            catch(Exception e)
            {
                MessageBox.Show(e.ToString());
            }

        }

Ale v definici zde Progress<double> progress = new Progress<double>(x => {
                    if (x > 0)
                    {
                        progressBar.Report((double)x / 100);
                    }
                });

dostávám error: "Use of unassigned local bariable 'progressBar'.

Mohl by někdo říct kde dělám chybu?

Děkuji,

S pozdravem,

Johny

Editováno 8. května 15:13
 
Odpovědět 8. května 15:10
Avatar
Duplicate
Člen
Avatar
Odpovídá na Duplicate
Duplicate:8. května 15:16

Muzete lock, jsem retard diky :D Nevsiml jsem si ze ten progress instancuju až dole :D

 
Nahoru Odpovědět 8. května 15:16
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.