您的位置:首页 > 理论基础 > 计算机网络

Android 通过Socket套接字使用TCP协议下载服务端文件

2018-01-13 00:30 302 查看
这几天都在做关于使用Socket然后使用Tcp协议去像服务端请求下载文件。

总结一下:由于之前没有接触过这种使用socket来像服务端请求文件导致走了不少弯路。

基于Tcp协议的Socket,我本来纠结的点是在于socket.getInputStream();这个得到的流是发送端一次性全部发过来的还是分块发过来的。后来知道其实是发送端一次性就发送过来,但是在网络传输过程中其实可能数据太大所以被分割了多个数据包过来。\

byte[] buff = new byte[1024];

inputStream.read(buff);一定要记住的是这个是一个阻塞的过程,如果没有接收到发送端发送的数据,程序运行到这个位置其实是阻塞的。另外,补充一点,inputStream.read(buff,offset,len);这个的意思是从流的offset位置读取len个字节到buff字节数组中去,这里千万不要混淆。

这个写的有点乱,由于是在家里写的这个,代码 我就不贴了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: