使用Java和readLine()回车和换行

我使用以下代码建立HTTP连接并读取数据:

con = (HttpURLConnection) new URL("http://stream.twitter.com/1/statuses/sample.json").openConnection(); ... con.connect(); while (line = rd.readLine()) { if (line.contains("\r\n")) { System.out.println("Carriage return + new line"); } } 

但是,似乎“\ r \ n”不是字符串( line )的一部分,尽管服务器确实返回它们。 如何读取数据并检测“\ r \ n”?

谢谢,

乔尔

如果rd的类型为BufferedReader ,则无法确定readLine()返回以\n\r\r\n结尾的内容…行尾字符将被丢弃而不是返回的部分串。

如果您真的关心这些字符,则无法通过readLine() 。 例如,您必须通过read()逐个read()字符。

来自javadocs :

 public String readLine() throws IOException 

阅读一行文字。 一条线被认为是由换行符(’\ n’),回车符(’\ r’)或回车符中的任何一个终止,后面紧跟换行符。
返回:
包含行内容的String, 不包括任何行终止字符 ;如果已到达流的末尾,则为null
抛出:
IOException – 如果发生I / O错误