QT, sprawdzenie rozmiaru pliku przed pobraniem

Odpowiedz Nowy wątek
2018-02-13 17:29
0

Heja!

Czy da się w QT sprawdzić ile będzie zajmował wybrany plik przed pobraniem?

Czego bym potrzebował?

Pozostało 580 znaków

2018-02-13 18:00

Okay, poradziłem sobie! :<

QNetworkReply posiada w SIGNAL metode:

downloadProgress(qint64 bytesReceived, qint64 bytesTotal)

Gdzie wystarczy przeliczyć bytesTotal na czytelniejszy format

QString downloaderWidget::sizeHuman(qint64 fileSize){
    QStringList sizeExt;
    sizeExt << "KB" << "MB" << "GB" << "TB";
 
    QStringListIterator it(sizeExt);
    QString units("bytes");
 
    float num = fileSize;
 
    while(num >= 1024.0 && it.hasNext()){
        units = it.next();
        num /= 1024.0;
    }
    return QString().setNum(num, 'f', 2) + " " + units;
}
edytowany 1x, ostatnio: Blooser, 2018-02-13 18:01

Pozostało 580 znaków

2018-02-16 00:51
3

Qt 5.10 wprowadziło gotowe rozwiązanie:

QLocale locale = this->locale();
QString valueText = locale.formattedDataSize(sizeValue);

Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0