用QT写TCP的客户端发送文件和数据
QT代码
下面展示一些 客户端的代码
。
因为是TCP通信,要在工程文件加上netwo
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include<QTcpSocket>
#include<QLabel>
#include<QFile>
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
void senddata();
private:
Ui::MainWindow *ui;
QTcpSocket *tcp;
QLabel *client_status;//client_status里面加载了图片,当与服务断coonect的时候会切换到红色的图片,disconnect的时候加载绿色的图片
QString filename;//发送的文件名字
quint64 filesize;//发送的文件大小
quint64 sendsize;//发送数据的大小
QFile *file; //创建一个文件的指针
};
#endif // MAINWINDOW_H
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QHostAddress>
#include<QPixmap>
#include<QFile>
#include<QFileDialog>
#include<QMessageBox>
#include<QDebug>
#include<QTimer>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
setFixedSize(500,600);
ui->setupUi(this);
ui->port->setText("8899");
ui->ip->setText("192.168.0.55");
client_status = new QLabel(this);
client_status<