|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
Как отправить файл по tcp весом больше 8 кб16.07.2017, 21:33. Показов 3497. Ответов 20
Понадобилось отправить бд клиенту с сервера, но бд весит не много(не больше 50 мб). Насколько я знаю отправлять файл можно только весом < 8 КБ, как обойти это ограничение?
Добавлено через 14 секунд Всем заранее спасибо! Добавлено через 3 часа 23 минуты up up up
0
|
|
| 16.07.2017, 21:33 | |
|
Ответы с готовыми решениями:
20
Отправить целый файл по tcp
Как отправить ответ клиенту с сервера TCP? |
|
Ушел с форума
|
|
| 17.07.2017, 08:53 | |
|
1
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 17.07.2017, 10:13 [ТС] | |
|
Спасибо, можете дать пример, я не нашел. Видимо плохо искал
0
|
|
|
Ушел с форума
|
|
| 17.07.2017, 10:32 | |
|
Читаешь файл в буфер (возможно, частями) и отправляешь по TCP функцией send.
Вот и весь рецепт. Тут важно на каждом шаге проверять, какое значение вернула send. Потому что может возникать ситуация, что байт отправлено меньше, чем передано. Ну или функция может вернуть 0 (на той стороне закрыли соединение) или -1 (ошибка).
1
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 17.07.2017, 12:11 [ТС] | |
|
А как на клиенте из буфера создать файл?
Добавлено через 1 час 4 минуты Если не сложно киньте статью или пример кода, большое вам спасибо!
0
|
|
|
|
|
| 17.07.2017, 12:43 | |
|
FastMailSend, я на WCF через TCP передавал большие файлы. Поищите по форуму, тут где-то есть пример того приложения.
1
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 18.07.2017, 18:19 [ТС] | |
|
Не нашел, извините:c
Добавлено через 17 часов 3 минуты Есть у кого примерчик? Добавлено через 3 часа 19 минут Есть у кого идеи или надо на Socket переписывать?
0
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 18.07.2017, 22:14 [ТС] | |
|
Просто я знаю, что на сокетах есть SendFile, аналога в TcpClient не видел (надо в буфер файл читать а потом отправлять).
Помощь нужна в составлении кода для сервера и клиента, т.к. я этим ни разу не занимался и не представляю, как это сделать. Примеров РАБОЧИХ не нашел.
0
|
|
|
20 / 20 / 14
Регистрация: 12.02.2016
Сообщений: 75
|
||||||
| 21.07.2017, 00:09 | ||||||
|
FastMailSend, TcpClient - клас, наследуемый от Socket, а значит SendFile в нём есть.
Пример:
1
|
||||||
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|||||||||||
| 23.07.2017, 13:15 [ТС] | |||||||||||
|
нашел 2 функции:
Добавлено через 18 часов 54 минуты up up
0
|
|||||||||||
|
Администратор
|
|
| 23.07.2017, 14:54 | |
|
FastMailSend, в методе SendFile вместо FileMode.Create нужно использовать FileMode.Open. И FileAccess достаточно Read указать. В .NET 4+ метод можно упростить с помощью Stream.CopyTo.
В методе Receive тоже ошибка с FileCreate - нужен FileMode.Create вместо FileMode.OpenOrCreate. Также стоит убрать цикл while и ненужные переменные tick, totalrecbytes.
1
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
||||||
| 23.07.2017, 14:56 [ТС] | ||||||
|
сам нашел еще 1 ошибку в методе Recieve вынесите из for
0
|
||||||
|
Администратор
|
|
| 23.07.2017, 15:05 | |
|
FastMailSend, ты о чем? В методе Receive нет цикла for и вызов
fs.Close() стоит на своем месте.
0
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 23.07.2017, 19:02 [ТС] | |
|
перепутал for и if, извиняюсь
Добавлено через 4 минуты Оказывается, отправляя на сайт я уже поправил код, а в vs не поправил)
0
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 26.07.2017, 16:37 [ТС] | |
|
Еще 1 вопросик: я передал файл бд sqlite, пытаюсь его прочитать с помощью любого редактора, но просит пароль, который я не ставил. Ах да ошибка "Database disk image is malformed ..." появляется при попытке прочитать его.
0
|
|
|
Администратор
|
||||||
| 26.07.2017, 17:13 | ||||||
|
FastMailSend, надо думать что файл был передан с ошибкой. Для уверенности сравни хеши файлов с помощью команды
1
|
||||||
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 28.07.2017, 14:31 [ТС] | |
|
Ничего не понимаю..
Хеши одинаковые, даже с помощью других программ проверял, но хеш 1 файла и хеш 2 совпадают. Чет тут нечисто. Добавлено через 17 часов 4 минуты Есть еще предложения? Добавлено через 1 минуту А сегодня открыл и не просит пароля, что за фигня...
0
|
|
|
Администратор
|
|
| 28.07.2017, 14:32 | |
|
FastMailSend, Чет тут нечисто
0
|
|
|
3 / 2 / 2
Регистрация: 24.05.2016
Сообщений: 248
|
|
| 28.07.2017, 21:39 [ТС] | |
|
Есть догадки, ребят?
Добавлено через 36 минут Произошло чудо и он больше не просит пароль, но ошибка все еще есть(такая же)
0
|
|
| 28.07.2017, 21:39 | |
|
Помогаю со студенческими работами здесь
20
Как отправить сообщение по tcp протоколу без присоединения TCP/IP клиент-сервер (не знаю как отправить текст от сервера к клиенту) Как отправить POST больше 1 раза Картинка выводится весом в 10 раз больше исходной Выдать информацию о химических элементах с удельным весом больше заданного Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK сделайте это, JDK, то сделайте это по следующей инструкции:
Установка Android SDK, NDK, JDK, CMake и т. д.
Перейдите по ссылке:. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|