Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
организовал скачку файлов. вот код который производит запись в файл. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 09:14 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Хорошо как сделать чтоб вот тут Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. программа получала данные по байтам а не все сразу? сделал так но это неправильно Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 10:35 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежник, можно читать блоками через ::read(char * data, qint64 maxSize) а обработку делать по байтам. Или тебе другое надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 12:43 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
mayton, мне именно это и надо.а в этом коде видимо что то не так сделал? если прочитал правильно,значит записал неправильно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 19:05 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежникв этом коде видимо что то не так сделал? Да в общем-то практически всё не так. Позиционирования на конец файла - нет. Запроса только недостающей части - нет. Конечный размер определяется неправильно. А за запись по одному байту вообще надо руки отрывать до самой задницы. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 19:12 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
А зачем QFile через new создаётся, а чуть ниже удаляется? Это ж потенциально может привести к утечке памяти, если между созданием и удалением возникнет исключение. Пользуйтесь хотя бы умными указателями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 19:19 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, по 1 байту - это для проверки. на конец файла будет следующий этап. я же сверху писал что хочу организовать запись побайтно.а там был пример который считывает полностью и записывает полностью.после того как удастся сделать это буду уже к следующему этапу, там будет проверка целостности файла и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 19:28 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
NekZА зачем QFile через new создаётся, а чуть ниже удаляется? Это ж потенциально может привести к утечке памяти, если между созданием и удалением возникнет исключение. Пользуйтесь хотя бы умными указателями. вопрос был о том сделать считывание и запись по байтам, а не про утечку памяти))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 19:33 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежник, вычитывание файла по байтам это "фасад". Реально файло читается блоками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 19:57 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
mayton, ок спс понятно. ну поменять цифру 1 будет не сложно думаю. вообщем поменял на 8. пытаюсь считать простой текстовой файл. и все равно не то. структура файла вроде правильная.а вот символы не те ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 20:11 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Я не спец в Qt. Но вроде текстовые данные читаются через QTextStream. И обрати внимание на setCodec(..) http://qt-project.org/doc/qt-4.8/qtextstream.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 20:30 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
maytonЯ не спец в Qt. Но вроде текстовые данные читаются через QTextStream. И обрати внимание на setCodec(..) http://qt-project.org/doc/qt-4.8/qtextstream.html я текстовой файл взял тоже для начала.на самом деле мне нужно будет скачивать бинарные файлы.они тоже не правильно записываются. почему то размер получается больше чем исходный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 20:34 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Тогда почему ты решил что символы "не те" ? Как догадался? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 20:35 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
mayton, исходный Код: sql 1. 2. 3. 4. 5. результат Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 20:38 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежник, все разобрался вместо write(data) надо write(data,len) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 20:52 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
все получилось Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. еще вопрос какой оптимальный размер лучше поставить для считывания ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 22:40 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежниквсе получилось Угу. Только одна мелочь: ты каждый раз перекачиваешь весь файл заново вместо того чтобы докачать только недостающее. Ну да скорость немеряна, траффик не считанный, а программист... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2014, 23:50 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, еще раз повторяю здесь я сделал всего лишь запись побайтно.остальное я буду делать сам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 07:55 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovКартежниквсе получилось Угу. Только одна мелочь: ты каждый раз перекачиваешь весь файл заново вместо того чтобы докачать только недостающее. Ну да скорость немеряна, траффик не считанный, а программист... а в каком месте написано что я каждый раз перекачиваю весь файл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 09:46 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежника в каком месте написано что я каждый раз перекачиваю весь файл? Вот ты видишь указание HTTP серверу с какого байта начинать выдачу?.. И его нет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 12:44 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovКартежника в каком месте написано что я каждый раз перекачиваю весь файл? Вот ты видишь указание HTTP серверу с какого байта начинать выдачу?.. И его нет. а это не то? Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 12:49 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
получается в данном случае он все равно получает весь файл,а только потом обрабатывает откуда читать и т.д.? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 12:51 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
а понял. там нужно использовать seek() ? или в данном случае все равно получится что весь файл скачаю, и с него уже будет считываться информация с нужного места? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 12:52 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежника это не то? А это вообще полная чушь, дающая весьма забавные спецэффекты о которых я не хочу спойлерить. "Сурпрайз будет..." (с) Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 13:03 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovКартежника в каком месте написано что я каждый раз перекачиваю весь файл? Вот ты видишь указание HTTP серверу с какого байта начинать выдачу?.. И его нет. на http сервере есть команда которая указыывает ему с какого байта выдавать инфу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 13:07 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
сперва делаю вот так читаю до поливины. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. затем делаю вот так. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. но два раза выходит записывается первая половина файла ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 13:24 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежникна http сервере есть команда которая указыывает ему с какого байта выдавать инфу? Content-Range . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 14:34 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovКартежникна http сервере есть команда которая указыывает ему с какого байта выдавать инфу? Content-Range . спасибл а где это тут указывается Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 14:43 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежникспасибл а где это тут указываетсяДокументацию на QT - это вы уже самостоятельно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 14:45 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovКартежникспасибл а где это тут указываетсяДокументацию на QT - это вы уже самостоятельно. manager->head(...) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 15:22 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 16:01 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovКартежникна http сервере есть команда которая указыывает ему с какого байта выдавать инфу? Content-Range . Поправка, "команда которая указывает серверу с какого байта выдавать инфу" это хедер Range в запросе клиента. А Content-Range - это хедер, которым сервер в своем ответе сообщает клиенту что он выполнил это указание и что в результате получилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 16:59 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Ага, есть такая путаница в моей ссылке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2014, 20:31 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyBasil A. Sidorovпропущено... Content-Range . Поправка, "команда которая указывает серверу с какого байта выдавать инфу" это хедер Range в запросе клиента. А Content-Range - это хедер, которым сервер в своем ответе сообщает клиенту что он выполнил это указание и что в результате получилось. делаю вот так но все равно получаю целую страницу Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 13:24 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежник, видимо не хватает HTTP/1.1 206 Partial content, а как его указать? ведь setRawHeader требует название и значение.а здесь только значение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 13:34 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
не тот заголовок в пример взял)).это со стороны сервера такой заголовок а с клиента надо так отправлять Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 14:16 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
теперь скажите мне. как сделать чтобы получилось что не весь сразу файл а по немножку получать. допустим по 100 кбит в сек. мне надо каждый раз новый заголовок с соответсвующими значениями формировать и отправлять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 14:23 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Я заходил в свойства сетевушки. Ставил в настройках скорость 10 Mbit/s и получал фактическую скорость трансфера чуть меньше чем 10 * 1024 (kbit/s) / 8 = 1280 Kbit/s. И тестил какие-то сетевые штуки на предмет падений производительности. Смотрел как JPEG с progressive рисуется в браузере. И еще всякие штуки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 15:41 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
у меня скорость 8mbit/sec. Допустим я скачиваю какой нить фильм (700мб) или visual studio. допустим в любую секунду может оборваться связь. допустим у меня тарификация а каждый мегабайт.и я не хочу платить лишнего(допустим качать download manager мне тоже не хочется по той же причине). и вот я хочу скачать этот фильм или визуал студию. ну допустим файл весит 700 мб = 734003200 байт.как лучше поступить? так? Код: plaintext 1. 2. 3. 4. 5. 6. 7. или в цикле по одному мегабайту? Код: plaintext 1. 2. 3. 4. 5. 6. 7. и каждый раз увеличивать значение "bytes=" (просто пока не написал увеличение,ну думаю смысл понятен) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 17:28 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. я хочу понять этот случай,я думаю следующее, что пока я не загрузится все 734003200 байт доступ к ним я не получу и соответсвенно не смогу сохранить хотя бы какую нить часть? чтоб после разрыва увеличить значение "bytes=x-734003199" где x размер уже загруженных данных. если так то второй вариант мне подходит,ну если конечно кто нить не предложит получше ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 17:37 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Картежникя думаю следующее, что пока я не загрузится все 734003200 байт доступ к ним я не получу и соответсвенно не смогу сохранить хотя бы какую нить часть? Добавь ещё три нолика и спроси себя: а в какое место будут приниматься все эти гигабайты пока ты не получишь к ним доступ?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 18:51 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovКартежникя думаю следующее, что пока я не загрузится все 734003200 байт доступ к ним я не получу и соответсвенно не смогу сохранить хотя бы какую нить часть? Добавь ещё три нолика и спроси себя: а в какое место будут приниматься все эти гигабайты пока ты не получишь к ним доступ?.. доступ я к ним получаю следующим образом Код: plaintext 1. 2. 3. 4. 5. 6. тут я понимаю так что он считывает данные только после того как получил все 734003200(000 хоть с тремя ноликами) байт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 18:55 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
если файл будет весить 734003200000 то вот тут file->write(reply->readAll()); мне кажется может произойти что то не очень хорошее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2014, 19:01 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
нашел готовое решение.и увидел что там файл запрашивается не по частям, а полностью и если загрузка была приостановлена,то запрос формируется только для оставшейся части файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2014, 11:09 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
имеется класс class myrequest: public QObject вот с этим тут я хотел отобразить то что вернул скрипт на сервере,т.е. html код страницы Код: plaintext 1. 2. 3. 4. и следующей функцией отправляющей post запрос Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. затем по нажатии кнопки формируется следующие данные и отправляется post запрос Это работает, но не отображает ответ. в принципе скрипт reg.php не отображает ничего Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Это неизвестно работает или нет. и не отображает ответ. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2014, 17:40 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
[quot Картежник] Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2014, 17:42 |
|
||
|
[QT] как организовать докачку файлов?
|
|||
|---|---|---|---|
|
#18+
блин торопился и испортил вопрос. вот правильный вопрос имеется класс class myrequest: public QObject вот с этим тут я хотел отобразить то что вернул скрипт на сервере,т.е. html код страницы Код: plaintext 1. 2. 3. 4. и следующей функцией отправляющей post запрос Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. затем по нажатии кнопки формируется следующие данные и отправляется post запрос Это работает, но не отображает ответ. в принципе скрипт reg.php не отображает ничего Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Это неизвестно работает или нет. и не отображает ответ. Но на самом деле скрипт отображает текст. вот мне нужно получить в QT этот текст. в браузере все работает. а через QT не могу отобразить Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2014, 17:45 |
|
||
|
|

start [/forum/topic.php?all=1&fid=57&tid=2019181]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
72ms |
get tp. blocked users: |
2ms |
| others: | 9ms |
| total: | 181ms |

| 0 / 0 |
