資源簡(jiǎn)介
基于TCP協(xié)議、c語言、socket套接字編程、文件指針讀寫操作的文件傳輸程序,基于s/c架構(gòu),運(yùn)行環(huán)境是VC++6.0 ,dos界面的控制臺(tái)應(yīng)用程序。實(shí)現(xiàn)功能是,從局域網(wǎng)一臺(tái)主機(jī)傳輸文件到另一臺(tái)主機(jī)。代碼簡(jiǎn)單有注解,親測(cè)保證可以運(yùn)行。

代碼片段和文件信息
#include?
#include?
#pragma?comment(lib?“WS2_32.lib“)//winsocket2需要的庫文件
#define?onekb?1024
void?main()
{
//加載套接字
WSADATA?????wsaData;
WORD?????wVersion?=?MAKEWORD(22);
WSAStartup(wVersion?&wsaData);
//創(chuàng)建套接字
SOCKET?sockClient=socket(AF_INETSOCK_STREAM0);
sockaddr_in?addrSrv;
addrSrv.sin_family=AF_INET;
addrSrv.sin_addr.S_un.S_addr=inet_addr(“127.0.0.1“);
addrSrv.sin_port=htons(6000);
//向服務(wù)器發(fā)出連接請(qǐng)求
connect(sockClient(LPSOCKADDR)&addrSrvsizeof(sockaddr_in));
printf(“請(qǐng)輸入請(qǐng)求的文件路徑:(如f:\\a.txt)\n“);
char?sendBuf[100];
gets(sendBuf);
//發(fā)送請(qǐng)求文件路徑到服務(wù)器
send(sockClientsendBufstrlen(sendBuf)+10);
//進(jìn)行文件操作
printf(“請(qǐng)輸入保存文件的路徑:(如f:\\b.txt)\n“);
char?filename[100];
gets(filename);
FILE?*fp=fopen(filename“wb“);
if?(fp?==?NULL)
{
printf(“打開文件失敗!\n“);
exit(1);
}
printf(“打開文件成功!\n“);
//接收文件數(shù)據(jù)
int?countsum=0;
char?recvBuf[onekb];
/* for(int?i=0;i<1778;++i)
{
memset(recvBuf?0?sizeof(recvBuf));
count=recv(sockClientrecvBufonekb0);
fwrite(recvBuf1countfp);
}
memset(recvBuf?0?sizeof(recvBuf));
recv(sockClientrecvBufonekb0);
fwrite(recvBuf1countfp);*/
while((count=recv(sockClientrecvBufonekb0))==onekb)
{
printf(“%d\n“count);
fwrite(recvBuf1count-1fp);
sum+=count;
}
printf(“%d\n“count);
fwrite(recvBuf1count-1fp);
sum+=count;
printf(“接收了%d字節(jié)的數(shù)據(jù)\n“sum);
fclose(fp);
//關(guān)閉套接字
closesocket(sockClient);
WSACleanup();
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????15372??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug\demo.obj
?????文件?????180341??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug\tcp_client_文件傳輸_1.exe
?????文件?????211572??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug\tcp_client_文件傳輸_1.ilk
?????文件????3641344??2014-08-29?16:59??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug\tcp_client_文件傳輸_1.pch
?????文件?????476160??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug\tcp_client_文件傳輸_1.pdb
?????文件?????140288??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug\vc60.idb
?????文件??????77824??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug\vc60.pdb
?????文件???????1625??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\demo.cpp
?????文件????1821491??2014-08-30?00:13??tcp_文件傳輸\tcp_client_文件傳輸_1\f
?????文件???????4447??2014-08-29?17:20??tcp_文件傳輸\tcp_client_文件傳輸_1\tcp_client_文件傳輸_1.dsp
?????文件????????550??2014-08-29?16:43??tcp_文件傳輸\tcp_client_文件傳輸_1\tcp_client_文件傳輸_1.dsw
?????文件??????41984??2014-08-30?00:26??tcp_文件傳輸\tcp_client_文件傳輸_1\tcp_client_文件傳輸_1.ncb
?????文件??????48640??2014-08-30?00:26??tcp_文件傳輸\tcp_client_文件傳輸_1\tcp_client_文件傳輸_1.opt
?????文件???????1396??2014-08-30?00:24??tcp_文件傳輸\tcp_client_文件傳輸_1\tcp_client_文件傳輸_1.plg
?????文件??????15822??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug\demo.obj
?????文件?????180335??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug\tcp_srv_文件傳輸_1.exe
?????文件?????226228??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug\tcp_srv_文件傳輸_1.ilk
?????文件????3641344??2014-08-29?16:43??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug\tcp_srv_文件傳輸_1.pch
?????文件?????476160??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug\tcp_srv_文件傳輸_1.pdb
?????文件?????181248??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug\vc60.idb
?????文件?????118784??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug\vc60.pdb
?????文件???????1780??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\demo.cpp
?????文件???????4414??2014-08-29?16:29??tcp_文件傳輸\tcp_srv_文件傳輸_1\tcp_srv_文件傳輸_1.dsp
?????文件????????544??2014-08-29?16:22??tcp_文件傳輸\tcp_srv_文件傳輸_1\tcp_srv_文件傳輸_1.dsw
?????文件??????41984??2014-08-30?00:26??tcp_文件傳輸\tcp_srv_文件傳輸_1\tcp_srv_文件傳輸_1.ncb
?????文件??????48640??2014-08-30?00:26??tcp_文件傳輸\tcp_srv_文件傳輸_1\tcp_srv_文件傳輸_1.opt
?????文件????????941??2014-08-30?00:24??tcp_文件傳輸\tcp_srv_文件傳輸_1\tcp_srv_文件傳輸_1.plg
?????目錄??????????0??2014-08-30?11:44??tcp_文件傳輸\tcp_client_文件傳輸_1\Debug
?????目錄??????????0??2014-08-30?11:44??tcp_文件傳輸\tcp_srv_文件傳輸_1\Debug
?????目錄??????????0??2014-08-30?11:44??tcp_文件傳輸\tcp_client_文件傳輸_1
............此處省略5個(gè)文件信息
評(píng)論
共有 條評(píng)論