почему не передаются данные по udp?

Рейтинг: -3Ответов: 1Опубликовано: 27.07.2023

отправляю я сообщение по юдипи и вот что я получаю :

0   1
str_priem:  ""
-9.58924   2
str_priem:  ""
-5.44021   3
str_priem:  ""
6.50288   4
str_priem:  ""
9.12945   5
str_priem:  ""
-1.32352   6
str_priem:  ""
-9.88032   7
str_priem:  ""

вот код :

по сути всё норм , один посылает другой принимает

// тут отправляем сообщение
void MainWindow::onTimeoutStart()
{

    str_ip = ui->lE_enover_id->text();
    str_port = ui->lE_enover_port->text();
    int_port = str_port.toInt(); // превращаем в инты

     // сообщение
    // состоит из двух чисел первое Х второе У
    if(grad >=360 )
    {
        grad = 0;
    }
    data_x = 10 * sin(grad);
    grad = grad + 5;
    if(data_y >= 100)
        data_y = 0;
    data_y = data_y + 1;

    //отправка
    QByteArray baDatagram_out;
    QDataStream out(&baDatagram_out, QIODevice::WriteOnly);
    out.setVersion(QDataStream::Qt_5_3);
    qDebug() << data_x << " " << data_y;
    out << data_x;
    out << data_y;
    if(ui->lE_enover_id->text().isEmpty() == true)
    {
        m_pudp->writeDatagram(baDatagram_out, QHostAddress::LocalHost, int_port);
    }
    else
    {
        m_pudp->writeDatagram(baDatagram_out, QHostAddress(str_ip),  int_port);
    }
}

принимаем :

void MainWindow::slotProcessDatagrams()
{
    QByteArray baDatagram_in;
    do {
        baDatagram_in.resize(m_pudp_in->pendingDatagramSize());
        m_pudp_in->readDatagram(baDatagram_in.data(), baDatagram_in.size());
    } while(m_pudp_in->hasPendingDatagrams());

    QDataStream in(&baDatagram_in, QIODevice::ReadOnly);
    in.setVersion(QDataStream::Qt_5_3);
    QString str_priem;
    in >>  str_priem;

    qDebug() << "str_priem: " << str_priem;
    str_priem.clear();
}

введите сюда описание изображения

Ответы

▲ 0Принят

Надо чтоб передавался в одном формате , у меня было их два qstring и double

QString data_str = QString::number(data_x)+ " "+QString::number(data_y);

out << data_str;

qDebug() <<data_str ;

введите сюда описание изображения