Russian Qt Forum
Ноябрь 25, 2024, 09:42 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: отображения прогресса при копировании файла  (Прочитано 8695 раз)
robin_bobin
Гость
« : Октябрь 10, 2012, 13:27 »

1) Можно ли узнать, сколько байт скопировано/перенесено во время копирования/перенесения фала QFile::Copy/QFile::Rename? 2) можно ли как-то узнать прогресс удаления файла?
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Октябрь 10, 2012, 13:35 »

1. Нет.
2. Нет.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
mutineer
Гость
« Ответ #2 : Октябрь 10, 2012, 13:36 »

1) Вроде бы нет
2) Прогресс удаления файла - это как? он же не побайтно удаляется
Записан
OKTA
Гость
« Ответ #3 : Октябрь 12, 2012, 10:16 »

а вот сразу вопрос - когда я скачиваю файл, то прогресс скачки лучше всего через QAbstractSocket::bytesAvailable () и размеру файла определять или есть и другой способ? А то этот врет периодически, точнее практически всегда 0_о
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #4 : Октябрь 12, 2012, 10:31 »

Откуда скачиваешь? Чем скачиваешь?
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
OKTA
Гость
« Ответ #5 : Октябрь 12, 2012, 10:43 »

qtcpsocket с pop3
Записан
mutineer
Гость
« Ответ #6 : Октябрь 12, 2012, 10:47 »

У тебя есть полный размер файла и количество уже прочитанных тобой из сокета байт. Все что нужно уже есть
Записан
OKTA
Гость
« Ответ #7 : Октябрь 12, 2012, 10:51 »

ну так-то оно  так, но разве QAbstractSocket::bytesAvailable () показывает реальный размер? ведь там уверен и часть служебных данных, которые не стоит учитывать?
Записан
mutineer
Гость
« Ответ #8 : Октябрь 12, 2012, 10:52 »

зачем тебе bytesAvailable() ? Учитывай сколько ты уже реально из сокета прочитал, а не сколько там еще доступно
Записан
OKTA
Гость
« Ответ #9 : Октябрь 12, 2012, 10:55 »

кхм, действительно  Смеющийся вот  я овощ)))
Записан
mitrich
Гость
« Ответ #10 : Октябрь 14, 2012, 16:07 »

Кстати, насчет прогресса при копировании файла: Это все-таки можно сделать, копируя при помощи QtFileCopier. Cм. классы QtFileCopier и QtCopyDialog из Qt Solutions.

ftp:// ftp.qt.nokia.com/qt/solutions/lgpl/qtcopydialog-2.2_1-opensource.zip
Записан
FluffyMan2000
Гость
« Ответ #11 : Октябрь 14, 2012, 17:34 »

недавно сталкивался с этим. смотри эту тему http://www.prog.org.ru/topic_23214_0.html
Записан
robin_bobin
Гость
« Ответ #12 : Октябрь 16, 2012, 10:21 »

накопал ссылку
http://www.qtforum.org/article/24548/how-to-display-the-copy-progress-of-qfile-on-qprogressbar.html

человек в конце пишет что у него получилось, правда я не могу разобраться как это сделать. подскажите, может всё-таки можно прогресс показать у qfile::copy?
Записан
mutineer
Гость
« Ответ #13 : Октябрь 16, 2012, 10:31 »

qFile::copy() это блокирующая функция, нельзя ее прогресс отобразить
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #14 : Октябрь 16, 2012, 10:39 »

Посмотрим с др. стороны

1) Написание своего копирования файла (типа "позорный велосипед"). Час, ну максимум 2 при недостатке опыта. Проблем с прогрессом никаких

2) Использование готовых ф-ций (типа "умный, ловкий, грамотный"). Обсуждение длится уже почти неделю, но решения пока не видно.

Выводы?  Улыбающийся
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.281 секунд. Запросов: 23.