java socket局域网传输文件丢包严重

想实现最简单的文件传输,自己传给自己2G的文件也没什么问题。但是在局域网里传输就丢包严重,几k的文件都不能传好大致代码如下发送方:skt=newSocket(ip,por... 想实现最简单的文件传输,自己传给自己2G的文件也没什么问题。但是在局域网里传输就丢包严重,几k的文件都不能传好

大致代码如下

发送方:

skt = new Socket(ip, port);
printStream = new PrintStream(skt.getOutputStream());
while( (readCount = fileReader.read(buffer, 0, 65535)) != -1 )
printStream.write(buffer, 0, readCount);

接收方:

fileReader = new BufferedInputStream(clientSkt.getInputStream());
fileWrtier = new BufferedOutputStream( new FileOutputStream(path) );
while( (readCount = fileReader.read(buffer, 0, 65535)) != -1 )
fileWriter.write(buffer, 0, readCount);

skt = new Socket(ip, port);
printStream = new PrintStream(skt.getOutputStream());
while( (readCount = fileReader.read(buffer, 0, 65535)) != -1 )
printStream.write(buffer, 0, readCount);

接收方:

fileReader = new BufferedInputStream(clientSkt.getInputStream());
fileWrtier = new BufferedOutputStream( new FileOutputStream(path) );
while( (readCount = fileReader.read(buffer, 0, 65535)) != -1 )
fileWriter.write(buffer, 0, readCount);

不知道问题出在哪里,或者有什么更好的解决方法呢?

谢谢
展开
 我来答
匿名用户
推荐于2016-08-07
展开全部
  UDP协议,回出现丢包。
  TCP协议,不会出现丢包。
  java socket局域网传输文件的底层是属于TCP协议,TCP理论上不用出现丢包的现象,所以,可以判断是程序逻辑有问题,请检测程序上否有逻辑错误。
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
蓝馥郁_Jeffery
2012-03-02
知道答主
回答量:13
采纳率:0%
帮助的人:3.7万
展开全部
LZ 我也遇到了这个问题 有的时候完整接收 有的时候就不行 723208047 能帮忙看下么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a牛仔部落a
2009-08-26 · TA获得超过337个赞
知道答主
回答量:60
采纳率:0%
帮助的人:0
展开全部
最关键的你的buffer的定义呢???怎么不给我们拿出来?你怎么用长度65535这么极限啊??况且不要用PrintStream,该类不会抛出IOException,有问题你有时候是看不出来的。
还有,你的问题很乱啊,发送和接收是要一一对应的,你看看对应了没?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
woshiwzy
推荐于2018-04-24 · TA获得超过227个赞
知道小有建树答主
回答量:210
采纳率:0%
帮助的人:191万
展开全部
这方面的 我也做过,建议用DataInputStream 做底层,然后用其他高级流,做装饰,这样穿不会丢失,我以前也做了一个如果要源代码,给我留言,不会丢失文件的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lpdwaini258
2009-08-25 · TA获得超过1254个赞
知道小有建树答主
回答量:414
采纳率:100%
帮助的人:151万
展开全部
路过socket不想去看,建议lz研究别的技术。基本没有现实的意义!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 5条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式