Java输入流read()和readline()方法对比分析【实例讲解】

read()方法读取的是单个字符,也可以说只要有输入流就会一直读取,返回的值是:作为一个整数(其范围从 0 到 65535 (0x00-0xffff))读入的字符,如果已到达流末尾,则返回 -1

因此使用该方法时应该尽量避免输入流数据重复的发送,这样会导致read()读取到很长的重复数据,导致读取超时,**但是对于仅有单次发送的输入流,则可以使用read()方法,**具体使用如下:

InputStream is = client.getInputStream(); //获取到客户端的输入流

byte[] b = new byte[1024]; //定义字节数组

int len = is.read(b); //由于信息的传输是以二进制的形式,所以要以二进制的形式进行数据的读取

String data = new String(b, 0,len);

System.out.println(“输入流消息:” + data);

Readline()方法读取输入流

=================

readLine方法读取一个是文本行。通过下列字符之一即可认为某行已终止:换行 (‘\n’)、回车 (‘\r’) 或回车后直接跟着换行。 返回的值是:包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null

也就是说只要readLine方法读取到的输入流中含有回车换行符,则读取结束,这样的话对于连续重复发送的输入流信息,我们可以在每条信息的末尾

  • 29
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值