连接服务器是一个重要的网络操作,在Qt中,通常需要使用QTcpSocket类来实现。下面是一个简单的示例,演示如何编写QTcpSocket客户端连接服务器并发送数据的代码:
#include <QTcpSocket>
void connectToServer() {
QTcpSocket *socket = new QTcpSocket(this); // 创建QTcpSocket对象
socket->connectToHost("127.0.0.1", 1234); // 连接到指定服务器和端口
if (socket->waitForConnected()) { // 等待连接成功
qDebug() << "Connected to server!";
QByteArray requestData = "Hello, server!"; // 待发送数据
socket->write(requestData); // 发送数据
socket->waitForBytesWritten(); // 等待数据发送完成
QByteArray responseData;
while(socket->waitForReadyRead()) { // 等待接收数据
responseData.append(socket->readAll());
}
qDebug() << "Response from server: " << responseData;
} else {
qDebug() << "Connection failed!";
}
socket->close(); // 关闭Socket连接
}
在上述代码中,我们创建了一个QTcpSocket对象,并通过connectToHost函数连接到指定服务器和端口(示例中连接到本机IP为127.0.0.1,端口号为1234的服务器)。如果连接成功,则发送一条消息,并等待服务器回复数据,最后关闭连接。当然,在实际应用中,还需要根据具体情况进行异常处理、错误提示等操作。