关于java的inputStream究竟一次会读多少byte?
我看过很多示例代码都是像这样byte[]buf=newbyte[1024];某Inputstreamis=什么intnum=is.read(buf)有一些inputstr...
我看过很多示例代码都是像这样
byte[] buf = new byte[1024];
某Inputstream is = 什么
int num = is.read(buf)
有一些inputstream我看到了在创建的时候能指定一次读进的最多byte数,但是有的是不能指定的,比如调用getXXXX()得到的,可是很多代码对这样的is还是那么用,真的么问题么?
会不会直接读超过1024了?比如网络通信的时候 展开
byte[] buf = new byte[1024];
某Inputstream is = 什么
int num = is.read(buf)
有一些inputstream我看到了在创建的时候能指定一次读进的最多byte数,但是有的是不能指定的,比如调用getXXXX()得到的,可是很多代码对这样的is还是那么用,真的么问题么?
会不会直接读超过1024了?比如网络通信的时候 展开
3个回答
展开全部
你根据你的程序来定义缓冲区的大小,比如一般局域网聊天软件,缓存定义个3*1024就够用了。 如果内容超过了缓存大小,那肯定会造成数据丢失的。
追问
原来如此唉。。那我还是定大点……
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先可以告诉你,不能读的超过1024个,超过了,后面的就读不到了!
更多追问追答
追问
这个是java的规定么?也就是说我创建个1024的byte数组肯定够用?
追答
她只是一个缓冲区。一次缓冲不够,缓冲几次就好了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询