浏览代码

优化 readData(),保留 windows 换行字符 \r

James 4 年之前
父节点
当前提交
d1806ba785
共有 1 个文件被更改,包括 6 次插入14 次删除
  1. 6 14
      src/main/java/com/jfinal/kit/HttpKit.java

+ 6 - 14
src/main/java/com/jfinal/kit/HttpKit.java

@@ -251,24 +251,16 @@ public class HttpKit {
 	}
 	
 	public static String readData(HttpServletRequest request) {
-		BufferedReader br = null;
 		try {
-			StringBuilder ret;
-			br = request.getReader();
+			BufferedReader br = request.getReader();
+			StringBuilder ret = new StringBuilder();
 			
-			String line = br.readLine();
-			if (line != null) {
-				ret = new StringBuilder();
-				ret.append(line);
-			} else {
-				return "";
-			}
-			
-			while ((line = br.readLine()) != null) {
-				ret.append('\n').append(line);
+			char[] buf = new char[1024];
+			for (int num; (num = br.read(buf, 0, buf.length)) != -1;) {
+				ret.append(buf, 0, num);
 			}
-			
 			return ret.toString();
+			
 		} catch (IOException e) {
 			throw new RuntimeException(e);
 		}