Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Pumych
0 / 0 / 0
Регистрация: 12.08.2010
Сообщений: 20
#1

Посылка файла через sendto(...) - C++

24.08.2010, 17:12. Просмотров 1026. Ответов 5
Метки нет (Все метки)

Через протокол UDP. Нужно открывать файл для чтения и указатель на него передавать в sendto?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.08.2010, 17:12     Посылка файла через sendto(...)
Посмотрите здесь:

Socket sendto - C++
Посылаю пакет используя sendto (UDP) Как определить что пакет успешно отправлен (с компа)? Проблема в том, что не выдается ошибок при...

Посылка сообщения активному окну. - C++
При написании программы столкнулся с одной проблемой: в окно должно писаться сообщение, но, когда я искал HWND программы с помощью...

Не работает ввод имени файла через fget и открытие через fopen - C++
Уже все перепробовал и в гугле пару часов посидел. Но никак не пойму где проблема допустим в этом коде : char filename; char *p; ...

Запись файла через одно приложение, а чтение через другое - C++
Есть 2 консольные программы. 1-я пишет в файл "z" текст, 2-я читает с файла "z" этот текст и работает с ним. Подскажите как...

Чтение файла через while - C++
Делаю лабу, но не знаю какое условие писать в while ибо обычное !feof(file) не подходит, выдаёт ошибку. void Read_Data_Base(Data_base ...

Открытие файла через ехешник - C++
Здравствуйте. Такой вопрос есть. Нужно разработать приложение, которое отображает параметры (package: name и launchable-activity: name ) из...

Запуск файла через cmd - C++
При открытие exe файла этой программы через cmd выводится "False", значит программе не удаётся открыть нужный файл. Если запускать через...

Открытие файла через переменную - C++
Здравствуйте, вот у меня к примеру будет такой код: string cfg; getline(cin, cfg); cfg += ".cfg"; ofstream access_file; ...

Передача файла через COM port - C++
Вопрос Чайника. Начал программировать на С++ совсем недавно и вот столкнулся с такой проблемойЖ Нужно отправить в порт файл по частям....

считать с файла через ентер - C++
Здравствуйте! Если считывать с файла вот так: freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
25.08.2010, 03:27     Посылка файла через sendto(...) #2
нет, нужно читать из файла в буфер, а потом буфер посылать
поначалу можно сделать чтение символа и посылку символа, но это затратно, так как sendto() - системный вызов

C
1
2
3
4
5
6
7
8
9
    int c;
 
    ...
 
    while ((c = getc(ifp)) != EOF)
        if (send(sockd, (char *) &c, 1, 0) < 0) {
            fprintf(stderr, "error" "\n");
            break;
        }
с буфером сложнее, так как файл может закончиться на последней порции, считанной в буфер, но её тоже нужно отправить
при этом, её может и не быть, так как в редких случаях, размер файла может быть кратен буферу
то есть требуется как допольнительная отправка, так и проверка перед этой допольнительной отправкой, нужно ли там отправлять
fasked
25.08.2010, 07:26
  #3

Не по теме:

Цитата Сообщение от Pumych Посмотреть сообщение
Нужно открывать файл для чтения и указатель на него передавать в sendto?
высокоуровневое мышление

accept
25.08.2010, 08:49
  #4

Не по теме:

да, похоже на php, но это php делали похожим на C, а не наоборот

Somebody
2786 / 1600 / 145
Регистрация: 03.12.2007
Сообщений: 4,189
Завершенные тесты: 1
25.08.2010, 13:22     Посылка файла через sendto(...) #5
А UDP пакеты могут не прийти, прийти по несколько раз или прийти не в том порядке, в котором отправляли, так что надо бы ещё номер куска файла или что-то такое отправлять.
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
25.08.2010, 17:22     Посылка файла через sendto(...) #6
Цитата Сообщение от Somebody Посмотреть сообщение
А UDP пакеты могут не прийти, прийти по несколько раз или прийти не в том порядке, в котором отправляли, так что надо бы ещё номер куска файла или что-то такое отправлять.
Тогда проще использовать TCP.
Yandex
Объявления
25.08.2010, 17:22     Посылка файла через sendto(...)
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru