java.io.UTFDataFormatException: encoded string too long:

java.io.UTFDataFormatException: encoded string too long: 259553 bytes

 

按如下修改可避开此问题。

-      output.writeUTF(jsonObject.toString());
+      String jsos =  jsonObject.toString();
+      int bufferSize = 60000;
+      int i =0;
+      int sum = 0;
+
+      while(i < jsos.length()){
+          int endIdx = java.lang.Math.min(jsos.length(),i+bufferSize);
+          String jsosPart = jsos.substring(i,endIdx);
+          output.writeUTF(jsosPart);
+          sum += jsosPart.length();
+          i += bufferSize;
+      }
+      assert sum == jsos.length();
+//      output.writeUTF(jsonObject.toString());

 

posted @ 2018-10-26 16:52  澄轶  阅读(3234)  评论(0编辑  收藏  举报