BufferedReader 中的readLine方法读不到内容的原因
来源:互联网 发布:仿淘宝模板 编辑:程序博客网 时间:2024/05/01 01:21
BufferedReader 中的readLine方法读不到内容的原因
在偶尔的一次测试中,服务端和客户端通信时,客户端发送了如下内容:“come from clientcome from clientcome from clientcome from clientcome from clien”,然后我在服务端采用BufferedReader读取,代码如下
String str = "";
//readLine判断一行是以\r\n来判断的。如果最后一段字符没有\r\n,那么采用这种方式将无法读出剩下的字符串
while ((str=bfr.readLine()) != null) {
System.out.println("收到客户端发送过来的内容" + str);
}
结果发现根本就没有读出内容。
后来查看readLine方法得知,这个方法是以\r \n \r\n作为一行的判断标志的,这就可以解释为什么客户端明明发送了内容,服务端去没有读到的原因,不是没有发送过来,而是因为读取方式不对导致的。如果客户端想要让服务器能读出他发送的所有内容,那就必须在发送内容后面加上\r \n \r\n这些标志中的一个。
例如:"come from client\r\ncome from client\r\ncome from client\r\ncome from client\r\ncome from client\r\n"
这样在服务端能读到五个:come from client
如果发送:"come from client\r\ncome from client\r\ncome from client\r\ncome from client\r\ncome from client"
服务端只能读到四个:come from client
因为结束时没有添加\r\n
- BufferedReader 中的readLine方法读不到内容的原因
- BufferedReader中的readLine()方法与换行符
- java 模拟BufferedReader中的readLine方法
- BufferedReader的readLine方法阻塞的处理
- 关于bufferedreader的read()与readline()读取出错的原因
- android socket readline()方法读不到值的问题
- bufferedReader中的readLine()源码解析
- BufferedReader readLine()是阻塞方法
- Java BufferedReader readLine方法i
- 黑马程序员 —— BufferedReader的readLine()方法
- BufferedReader源码分析之readLine方法
- 黑马程序员——Java基础——IO流(模拟BufferedReader类中的readLine()方法)
- readLine原理及自定义一个类中包含一个和readLine一致的方法功能来模拟BufferedReader
- IO流 System.in BufferedReader的readLine()方法 toUpperCase()方法 equalsIgnoreCase("exit")
- 认识BufferedReader的readLine、re…
- 关于BufferedReader readline 阻塞的问题
- 用Reader模拟BufferedReader的readLine()功能
- BufferedReader的readLine()为非阻塞
- 计算机信息管理是目前计算机应用最广泛的一个领域
- [Java 游戏编程]STG类游戏的实现3-Enemy&&BulletCollision
- First Day in CSDN
- java.util.concurrent介绍
- 数据结构-查找字符串
- BufferedReader 中的readLine方法读不到内容的原因
- 我的opencv作死之旅[1] -- 在ubuntu下opencv环境配置
- 获取JOP卡的版本与功能信息
- 数组加法问题
- oracle的主键问题
- Java:将异常的完整堆栈追踪信息保存到字符串中(详解)
- 文本检测工具的API
- Jquery Json==DataTable 转换 Json 和 前台遍历 Json
- css美化下拉框select