91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

基于TCP的C/S結構程序,能上傳下載文件,在客戶端顯示進度,能隨時終止上傳下載,傳輸速度也還不錯

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?
#include?
#include?
#include?
#define?SERVER_PORT?7000?//偵聽端口
#define?BUF_SIZE??40960

char?*down_path?=?“E:\\第二個作業\\TCP\\downfile\\“;
char?down_name[][512]?=?{“11.rar““hh.exe““ll.exe““5.jpg“};
char?up_name[][512]?=?{“vc.rar““xinjiang.ts““kuwo.exe““dvb.pdf““4.jpg“};
unsigned?long?get_file_lenth(const?char*?filename)
{
????int?file_lenth;
????FILE?*fp=fopen(filename“rb“);
????if(fp==NULL)
????{
????????printf(“ERROE:open?file?%s?faile!\n“filename);
????????return?0;
????}
????fseek(fp0LSEEK_END);
????file_lenth=ftell(fp);
????fseek(fp0LSEEK_SET);
????return?file_lenth;
}

//文件上傳
void?client_put(const?char?filename[]SOCKET?sockfd)
{

char ?buf_client_write[BUF_SIZE];
int ?write_bytesfile_block;
FILE ?*fp;
long?int ?file_lenth;
long?int ?lenth[10];//裝文件長度數組
char ?filesize[256];
char ?ch;
int??????????i=0;

//將buf_server_write中文件名發送至服務端
????memset(buf_client_write0sizeof(buf_client_write));//將數組清空
????strncpy(buf_client_writefilenamestrlen(filename));?
????if((write_bytes=send(sockfdbuf_client_writeBUF_SIZE0))==-1)
????{
?????????printf(“Server?:?I?send?filename?fail?\n“);
?????????return;
????}
printf(“filename?success\n“);

file_lenth=get_file_lenth(filename);
????lenth[0]?=?file_lenth/1024;//將字節數轉換為KB
printf(“the?file?lenth?is?%d?KB\n“(lenth[0]+1));

//發送文件大小
itoa(file_lenthfilesize10);
send(sockfdfilesize256+10);

//打開要發送的文件
fp?=?fopen(filename“rb+“);
if(fp?==?NULL)
{
MessageBox(NULL“文件為空“““MB_OK);
return?;
}
else
{
//清空發送緩沖區
????????memset(buf_client_write0sizeof(buf_client_write));
????????file_block=0;
while(file_lenth>0)
????????{
if(!kbhit())//?沒有按鍵操作就傳輸數據
{
if((file_block=fread(buf_client_writesizeof(char)BUF_SIZEfp))<0)
{
printf(“read?error\n“);
return;
}
file_lenth?-=?file_block;
if(send(sockfdbuf_client_writefile_block0)<0)
{
printf(“send?error\n“);
return;
}
i++;
if(30?==?i)
{
fprintf(stdout“ˉ“);
i=0;
}
memset(buf_client_write0sizeof(buf_client_write));
if(feof(fp))
break;
}
else
{
ch?=?getch();
if(ch?!=?‘p‘)
continue;
do
{
ch?=?getch();?//?接收第二次按鍵
}
while(ch?!=?‘p‘);
}
??????????????
????????}
????????fclose(fp);
????????printf(“Client:?I?transmit?finish?!\n“);
}



}

//文件下載
void?client_get(const?char?filename[]SOCKET?sockfd)
{
char ???buf[BUF_SIZE]recv_buf[BUF_SIZE];
????int ???write_bytesread_bytesfile_block;
????FILE ???*fp1;
char???????filesize[256]ch;
long?int???filelen;
int ???i=0;
char ???full_name[512];
int time1time2;

fd_set?fdsets;
int?nTimeOut=0;
TIMEVAL?tv;
int?nNum;
tv.tv_sec?=?nTimeOut?/?1000;
tv.tv_usec?=?nTimeOut?%?1000;
nNum?=?select(0?&

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????119562??2014-03-26?21:38??TCP\client\4.jpg

?????文件???????7290??2014-04-02?15:16??TCP\client\client.c

?????文件???????4321??2014-03-21?21:20??TCP\client\client.dsp

?????文件????????535??2014-03-21?19:47??TCP\client\client.dsw

?????文件??????50176??2014-04-02?16:53??TCP\client\client.ncb

?????文件??????53760??2014-04-02?16:53??TCP\client\client.opt

?????文件????????246??2014-04-02?15:16??TCP\client\client.plg

?????文件????2057216??2014-03-26?20:35??TCP\client\Debug\client.bsc

?????文件?????188474??2014-04-02?15:16??TCP\client\Debug\client.exe

?????文件?????255472??2014-04-02?15:16??TCP\client\Debug\client.ilk

?????文件??????30326??2014-04-02?15:16??TCP\client\Debug\client.obj

?????文件????2853176??2014-04-02?11:46??TCP\client\Debug\client.pch

?????文件?????508928??2014-04-02?15:16??TCP\client\Debug\client.pdb

?????文件??????????0??2014-03-26?20:35??TCP\client\Debug\client.sbr

?????文件??????66560??2014-04-02?16:47??TCP\client\Debug\vc60.idb

?????文件??????69632??2014-04-02?15:16??TCP\client\Debug\vc60.pdb

?????文件?????794160??2014-03-26?08:51??TCP\client\dvb.pdf

?????文件?????119562??2012-04-07?12:26??TCP\server\4.jpg

?????文件?????783156??2014-03-09?10:12??TCP\server\5.jpg

?????文件????2057216??2014-03-24?12:05??TCP\server\Debug\server.bsc

?????文件?????167994??2014-04-02?11:52??TCP\server\Debug\server.exe

?????文件?????213004??2014-04-02?11:52??TCP\server\Debug\server.ilk

?????文件??????23026??2014-04-02?11:52??TCP\server\Debug\server.obj

?????文件????2856520??2014-04-02?11:52??TCP\server\Debug\server.pch

?????文件?????484352??2014-04-02?11:52??TCP\server\Debug\server.pdb

?????文件??????????0??2014-03-24?12:05??TCP\server\Debug\server.sbr

?????文件??????58368??2014-04-02?16:43??TCP\server\Debug\vc60.idb

?????文件??????69632??2014-04-02?11:52??TCP\server\Debug\vc60.pdb

?????文件?????199645??2009-03-21?09:49??TCP\server\Linux.mht

?????文件???????6733??2014-04-02?11:52??TCP\server\server.c

............此處省略13個文件信息

評論

共有 條評論