资源简介
基于TCP协议、c语言、socket套接字编程、文件指针读写操作的文件传输程序,基于s/c架构,运行环境是VC++6.0 ,dos界面的控制台应用程序。实现功能是,从局域网一台主机传输文件到另一台主机。代码简单有注解,亲测保证可以运行。
代码片段和文件信息
#include
#include
#pragma comment(lib “WS2_32.lib“)//winsocket2需要的库文件
#define onekb 1024
void main()
{
//加载套接字
WSADATA wsaData;
WORD wVersion = MAKEWORD(22);
WSAStartup(wVersion &wsaData);
//创建套接字
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);
//向服务器发出连接请求
connect(sockClient(LPSOCKADDR)&addrSrvsizeof(sockaddr_in));
printf(“请输入请求的文件路径:(如f:\\a.txt)\n“);
char sendBuf[100];
gets(sendBuf);
//发送请求文件路径到服务器
send(sockClientsendBufstrlen(sendBuf)+10);
//进行文件操作
printf(“请输入保存文件的路径:(如f:\\b.txt)\n“);
char filename[100];
gets(filename);
FILE *fp=fopen(filename“wb“);
if (fp == NULL)
{
printf(“打开文件失败!\n“);
exit(1);
}
printf(“打开文件成功!\n“);
//接收文件数据
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字节的数据\n“sum);
fclose(fp);
//关闭套接字
closesocket(sockClient);
WSACleanup();
}属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 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个文件信息
- 上一篇:道路提取算法 c++ opencv
- 下一篇:基于C++的五子棋游戏设计
相关资源
- 基于MFC的TCP调试助手源码95706
- 基于mfc的多线程文件传输
- C++多线程网络编程Socket
- 文件传输和聊天程序(c语言实现)
- Quectel_EC200xEG912YEC600NEC600S系列_TCP(I
- 基于STM32F407的W5500 tcpserver(官网例程
- 基于CS的TCP文件传输程序设计
- socket客户端.c
- socket服务端.c
- TCP/IP客户端和服务器端源代码,好用
- modbus tcp/ip 简单通讯
- libnet发送udp和tcp包
- windows网络编程_文件传输
- socket tcp应用
- TCP/IP与串口调试
- Tcp自定义命令调试工具
- Qt TCP聊天室demo
- TCP服务端和TCP客户端通讯
- socket通讯c++源码(客户端+服务端)
- MFC的异步网络通讯应用程序
- 各种关于CAsyncSocketCSocket内幕及其用法
- MFC多人聊天室
- 使用socket套接字发送udp数据包
- CAsyncSocket异步实现服务器与客户端
- 基于TCP协议的C/S传输文件C++)
- 基于socket文件传输的实现源码[C++]
- C语言实现TCP/IP协议通信和UDP协议通信
- c语言+UDP+DES加密+socket编程
- 局域网下,手机可以和电脑通过sock
- VC++实现两台电脑文件传输(源代码)
川公网安备 51152502000135号
评论
共有 条评论