社区
网络编程
帖子详情
关于网络文件传输问题
luomingmao129
2008-04-21 04:01:59
我想在客户端和服务器之间进行文件传输,客户端向服务器端传输没有问题,但从服务器向客户端传输就出问题了。客户端开始是用for循环send,而服务器则用一个线程接收。当服务器接收完之后对文件进行某些处理再传回客户端,这时就出问题了。当客户端发完数据之后就用receive等待。请哪位高手指点一下,不按照我开始说的也行,反正是实现这个功能:客户端传文件给服务器,服务器对该文件做了处理之后再把该文件传回客户端,而且能够允许多个客户端同时进行。谢谢!
...全文
99
8
打赏
收藏
关于网络文件传输问题
我想在客户端和服务器之间进行文件传输,客户端向服务器端传输没有问题,但从服务器向客户端传输就出问题了。客户端开始是用for循环send,而服务器则用一个线程接收。当服务器接收完之后对文件进行某些处理再传回客户端,这时就出问题了。当客户端发完数据之后就用receive等待。请哪位高手指点一下,不按照我开始说的也行,反正是实现这个功能:客户端传文件给服务器,服务器对该文件做了处理之后再把该文件传回客户端,而且能够允许多个客户端同时进行。谢谢!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
knowledge_Is_Life
2008-05-01
打赏
举报
回复
这个简单啊,网上搜一下就得到答案了.
UltraBejing
2008-04-30
打赏
举报
回复
我也想知道,正在找這方面的資料~~~~~
cnzdgs
2008-04-21
打赏
举报
回复
ret = send(client, buffer, strlen(buffer), 0);
我说的是这行。你是怎么写的?
luomingmao129
2008-04-21
打赏
举报
回复
嗯,谢谢。这个问题在上面没写好,在实际中我用的是宏,所以这里就随便用数字代替了,没怎么加以区分,主要问题是,从客户端传文件给服务器正常,但从服务器再传回客户端就不行了。
cnzdgs
2008-04-21
打赏
举报
回复
传文件数据别用strlen函数,strlen是取字符串长度,遇到\0就认为字符串结束了。发送数据的长度用fread的返回值来计算。
luomingmao129
2008-04-21
打赏
举报
回复
客户端主要代码如下:
pf = fopen("sendfile.txt", "rb");
while(1) // send file
{
fread(buffer, 1, 1024, pf);
ret = send(server, buffer, strlen(buffer), 0);
if(ret == 0)
break;
}
fclose(pf);
pf = fopen("receivefile.txt", "wb");
while(1) // receive file
{
ret = recv(server, buffer, 1024, 0); // 这个地方收不到数据
if(ret == 0)
break;
fwrite(buffer, 1, ret, pf);
}
fclose(pf);
服务器的线程主要代码如下:
while(1)
{
ret = recv(client, buffer, 1024, 0);
if(ret == 0)
break;
fwrite(buffer, 1, ret, pf);
fclose(pf);
...... // 对接收后的文件进行处理之后再发给客户端,但这个时候好象不运行下面的代码了。
pf = fopen("temp.txt", "rb");
while(1)
{
fread(buffer, 1, 1023, pf);
ret = send(client, buffer, strlen(buffer), 0);
if(ret == 0)
break;
}
}
客户端或是服务器端不知道哪个地方不对。
hurryboylqs
2008-04-21
打赏
举报
回复
线程
cnzdgs
2008-04-21
打赏
举报
回复
只要服务器对每个客户端开一个线程处理就可以。你目前的做法遇到什么问题?
大型
文件传输
自己写的实现大型
文件传输
的例子,完整的工程。运行比较稳定,发送采用多线程实现,,局域网的测试发送速度在6.2M每秒。
C# 局域网
文件传输
与聊天程序源码
C# 实现局域网
文件传输
与聊天程序源码,此源码为winform窗体。
wcf分块传输大文件的例子
wcf分块传输大文件的例子
基于Socket的Android手机视频实时传输所有源程序
基于Socket的Android手机视频实时传输所有源程序,包括Android客户端和PC端。同时包含说明文档。
使用Internet控件的简单Web浏览器
使用Micrsoft Internet控件的简单Web浏览器,简单FTP程序
网络编程
18,358
社区成员
64,186
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章