1、解决因切分来车状态信息时,切分异常的问题
This commit is contained in:
parent
4eb953d178
commit
cb379ed189
|
|
@ -77,10 +77,11 @@ void TcpClient::connectToServer(QString ip, int port) {
|
||||||
// 接收到数据
|
// 接收到数据
|
||||||
connect(this->tcp_, &QTcpSocket::readyRead, this, [=](){
|
connect(this->tcp_, &QTcpSocket::readyRead, this, [=](){
|
||||||
QByteArray jsonData = this->tcp_->readAll();
|
QByteArray jsonData = this->tcp_->readAll();
|
||||||
// emit sendTcpInfoSignals("--" + QString(jsonData));
|
|
||||||
jsonData.replace("}{", "}-{");
|
jsonData.replace("}{", "}&{");
|
||||||
QList<QByteArray> jsonDataList = jsonData.split('-');
|
QList<QByteArray> jsonDataList = jsonData.split('&');
|
||||||
for (int i = 0; i < jsonDataList.size(); i++) {
|
for (int i = 0; i < jsonDataList.size(); i++) {
|
||||||
|
// emit getTcpInfoSignals("TCP:" + QString(jsonDataList[i]));
|
||||||
QJsonDocument jsonDocument = QJsonDocument::fromJson(jsonDataList[i]);
|
QJsonDocument jsonDocument = QJsonDocument::fromJson(jsonDataList[i]);
|
||||||
if (jsonDocument.isObject()) {
|
if (jsonDocument.isObject()) {
|
||||||
QJsonObject jsonObject = jsonDocument.object();
|
QJsonObject jsonObject = jsonDocument.object();
|
||||||
|
|
@ -91,7 +92,7 @@ void TcpClient::connectToServer(QString ip, int port) {
|
||||||
come_time = jsonObject["cometime"].toString();
|
come_time = jsonObject["cometime"].toString();
|
||||||
carType = jsonObject["type"].toString();
|
carType = jsonObject["type"].toString();
|
||||||
}
|
}
|
||||||
else if (jsonObject["type"].toString() != carType)
|
else if (jsonObject["type"].toString() != carType && carType == "1")
|
||||||
{
|
{
|
||||||
// 火车无
|
// 火车无
|
||||||
emit this->comeTrainSignals(false);
|
emit this->comeTrainSignals(false);
|
||||||
|
|
|
||||||
|
|
@ -36,6 +36,7 @@ signals:
|
||||||
void sendTcpInfoSignals(QString info);
|
void sendTcpInfoSignals(QString info);
|
||||||
void socketComplete(QTcpSocket* tcp, QString ip, quint16 port); // tcp句柄发送给主线程监管
|
void socketComplete(QTcpSocket* tcp, QString ip, quint16 port); // tcp句柄发送给主线程监管
|
||||||
void restartSocket(QString ip, int port); //重启Socket连接
|
void restartSocket(QString ip, int port); //重启Socket连接
|
||||||
|
void getTcpInfoSignals(QString info);
|
||||||
|
|
||||||
};
|
};
|
||||||
#endif // TCPCLIENT_H
|
#endif // TCPCLIENT_H
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue