QT模組學習 TCP通訊(檔案傳輸)

2021-10-09 12:37:35 字數 1925 閱讀 4198

檔案傳輸其實和前邊的差不多,都是伺服器監聽客戶端的連線請求,客戶端連線後向其傳送檔案,為了防止檔案傳輸有問題,先傳送檔名稱和檔案大小,隨後傳送檔案內容,因此客戶端接受檔名稱,檔案大小,隨後接收檔案內容。

ui 介面

//檔案資訊

qmessagebox::

information

(this

,"檔案傳輸情況"

,"檔案接收完成");

tcpsocket-

>

disconnectfromhost()

; tcpsocket-

>

close()

;}})

;}client::

~client()

void client::

on_pushbutton_clicked()

ui 介面

//提示開啟的檔案路徑

ui->textedit-

>

(filepath)

; ui-

>file-

>

setenabled

(false);

ui->send-

>

setenabled

(true);

}else

}void sever::

on_send_clicked()

else

}void sever::

senddata()

; len = sfile.

read

(buf,

sizeof

(buf));

//傳送資料,讀多少發多少

tcpsocket-

>

write

(buf,len)

; sendsize +

=len;

}while

(len>0)

;if(sendsize == filesize)

}

socket通訊檔案傳輸

主機傳送方 fileinfo ezonefile new fileinfo 檔案路徑 開啟檔案流 filestream ezonestream ezonefile.openread 包的大小 int packetsize 1024 包的數量 int packetcount int ezonestre...

tcp檔案傳輸

include include include include include include include include define buffer size 100 1024 1024 define file name max size 512 intmain int argc,char a...

QT中TCP實現檔案傳輸功能

實物圖 客戶端 傳送端 和服務端 接受端 為一體 部分 詳情 注釋詳細 widget.h ifndef widget h define widget h include include include include namespace ui class widget public qwidget ...