BufferedReader在读取html页时忽略


BufferedReader ignoring when reading html page?

我使用Apache HTTPClient向页面发送POST请求,然后使用BufferedReader读取响应。

出于某种原因,BufferedReader正在读取我作为1行响应的两行。我的回应:

SUCCESS  
RANDOM STRING

这是我的PHP:

header('Content-Type: text/plain');
echo 'SUCCESS';
echo '''r''n';
echo 'Random String';

缓冲阅读器只打印出

success'r'nRandom String

我做错什么了吗?我使用了带有循环的普通br.readLine()来读取所有内容。

有几个问题:

  • 转义序列必须用双引号,而不是单引号。在单引号中,PHP不查找除''''之外的转义序列
  • 您正在转义反斜杠本身,这将导致PHP回显字面反斜杠。只需要一个反斜杠

只需更换

echo '''r''n';

带有

echo "'r'n";

是。当它们位于单引号中时,不会被解释为换行符。它们将从字面上解释为'r'n。请改用双引号。

echo "'r'n";

转义序列只在双引号中有效。