资源简介
计算机网络socket编程实验:一个服务器端和一个客户端之间发送文件
代码片段和文件信息
#include
#include
#include
#include
#include
#include
int main(void)
{
FILE* file=NULL;//定义文件指针
WSADATA wd; //这个结构被用来存储 被WSAStartup函数调用后返回的 Windows Sockets数据
SOCKET cSocket; //定义套接字
SOCKADDR_IN sa;
u_short port=5000; //定义端口号
char buffer[1024*32];//缓冲区
int ret=0;
int len=0;
DWORD fileSize=0;
char filename[50];
printf(“请输入要传输的文件路径:“);
while(scanf(“%s“&filename))
{
if((_access(filename0))==-1)
{
printf(“文件路径不存在,请重新输入正确的文件路径:“);
}
else break;
}
if(WSAStartup(MAKEWORD(22)&wd)!=0)//返回值不等与0说明初始化WASDATA失败
printf(“Socket2.2初始化失败!\n“);
if((cSocket=socket(AF_INETSOCK_STREAMIPPROTO_TCP))==INVALID_SOCKET) //创建socket
{
printf(“Socket 创建失败!“);
WSACleanup();
Sleep(3000);
return 0;
}
char ip_addr[50];
printf(“请输入要发送文件的目的IP地址:“);
scanf(“%s“&ip_addr);
memset(&sa 0 sizeof(sa)); //内存空间,初始化为0
sa.sin_family=AF_INET; //代表网络地址族,设置地址类型为internetwork
sa.sin_port=htons(port); //htons()将short型数据转换为网络字节类型
sa.sin_addr.S_un.S_addr=inet_addr(ip_addr); //设置IP地址为127.0.0.1即本地机地址
if ((ret=connect(cSocket(struct sockaddr*)&sasizeof(sa)))==SOCKET_ERROR) //调用connect,与客户端连接
{
printf(“connect error:%d\n“WSAGetLastError());
WSACleanup();
Sleep(3000);
return 0;
}
file=fopen(filename“rb“);//以二进制的形式读文件,返回指向该流的文件指针
fileSize=GetFileSize(fileNULL);//返回文件长度
memset(buffer0 sizeof(buffer)); //将buffer清0
while( !feof( file ) ) //feof()检测流上的文件结束符
{
len = fread( buffer 11024*32 file ); //从file流中读取数据放到buffer中
send( cSocket buffer len 0 ); //调用send()将buffer中的数据发送到
}
printf(“已向服务器发送文件!\n输入任意键结束程序!\n“ );
getchar();
fclose(file);
getchar();
if ((closesocket(cSocket))==SOCKET_ERROR) //关闭套接字
printf(“%d\n“WSAGetLastError());
WSACleanup();
return 0;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 32256 2012-12-15 15:25 计算机网络socket编程\Debug\client.exe
文件 33280 2012-12-15 17:03 计算机网络socket编程\Debug\serve.exe
文件 15 2012-12-15 15:27 计算机网络socket编程\Debug\Tulips.txt
文件 357112 2012-12-15 17:03 计算机网络socket编程\Debug\计算机网络socket编程.ilk
文件 486400 2012-12-15 17:03 计算机网络socket编程\Debug\计算机网络socket编程.pdb
文件 2484 2012-12-15 17:25 计算机网络socket编程\计算机网络socket编程\client.cpp
文件 13332 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\BuildLog.htm
文件 1979 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\client.obj
文件 65 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\mt.dep
文件 32719 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\serve.obj
文件 338944 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\vc90.idb
文件 102400 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\vc90.pdb
文件 663 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\计算机网络socket编程.exe.em
文件 728 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\计算机网络socket编程.exe.em
文件 621 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug\计算机网络socket编程.exe.intermediate.manifest
文件 5192 2012-12-15 17:08 计算机网络socket编程\计算机网络socket编程\serve.cpp
文件 0 2012-12-15 16:56 计算机网络socket编程\计算机网络socket编程\Tulips.jpg
文件 4046 2012-12-11 20:32 计算机网络socket编程\计算机网络socket编程\计算机网络socket编程.vcproj
文件 1411 2013-03-24 18:43 计算机网络socket编程\计算机网络socket编程\计算机网络socket编程.vcproj.acer-PC.acer.user
文件 15887360 2013-03-24 18:43 计算机网络socket编程\计算机网络socket编程.ncb
文件 947 2012-12-09 20:24 计算机网络socket编程\计算机网络socket编程.sln
..A..H. 34304 2013-03-24 18:43 计算机网络socket编程\计算机网络socket编程.suo
目录 0 2012-12-15 17:03 计算机网络socket编程\计算机网络socket编程\Debug
目录 0 2012-12-15 17:24 计算机网络socket编程\Debug
目录 0 2012-12-15 17:25 计算机网络socket编程\计算机网络socket编程
目录 0 2012-12-15 15:48 计算机网络socket编程
----------- --------- ---------- ----- ----
17336258 26
相关资源
- Linux网络编程-网络基础-socket编程-高并
- Socket编程。ppt
- 黑马_Linux网络编程-网络基础-socket编程
- 实战Linux+Socket编程.pdf
- 基于TCP的Socket编程服务器和客户端代
- 《NIO与Socket编程技术指南》_高洪岩
- Linux下基于UDP的socket编程,适用多客户
- socket编程常用API汇总
- 基于UDP和TCP的Socket编程文件传输,D
- socket编程_windows_linux_数据传输
- windows平台下socket编程之TCP
- 计算机网络实验基于Socket编程
- 华中科技大学计算机网络实验
- 电网监测系统
-
应用socket编程来进行xm
l的传输已经 - 消息封/解装仿真
- 使用socket编程模拟滑动窗口协议
- socket编程 TCP文件的传输实现 客户端和
- 基于组播的局域网聊天程序
- 网络抢答系统CompetitionResponder(原创)
- IPV4和IPV6兼容的socket编程(原著)
- linux下socket编程(广播组播和udp)源码
- VC 聊天系统 socket编程
- 基于UDP、TCP、多线程的socket编程
- socket编程定长处理数据
- 计算机实验 Socket编程 FTP客户端源程序
- 实验一 Socket 编程 一、实验目的 套接
- Java socket编程实现两台主机间的通信
评论
共有 条评论