返回值如下,中文乱码{"analyse_result":"{\"\u6307\u793a\u706f_1\": {\"\u68c0\u6d4b\u6846\u5750\u6807\": [437, 1188, 574, 1325], \"\u68c0\u6d4b\u7ed3\u679c\": \"\u5173\"}, \"\u6307\u793a\u706f_2\": {\"\u68c0\u6d4b\u6846\u5750\u6807\": [1245, 1181, 1391, 1329], \"\u68c0\u6d4b\u7ed3\u679c\": \"\u5173\"}, \"\u6307\u793a\u706f_3\": {\"\u68c0\u6d4b\u6846\u5750\u6807\": [841, 1192, 985, 1335], \"\u68c0\u6d4b\u7ed3\u679c\": \"\u5173\"}, \"\u6307\u793a\u706f_4\": {\"\u68c0\u6d4b\u6846\u5750\u6807\": [1646, 1191, 1780, 1323], \"\u68c0\u6d4b\u7ed3\u679c\": \"\u5173\"}, \"\u6570\u7801\u7ba1\u6570\u5b57\u8868_5\": {\"\u68c0\u6d4b\u6846\u5750\u6807\": [871, 373, 1351, 861], \"\u68c0\u6d4b\u7ed3\u679c\": \"2226,2265,2279\"}, \"\u6570\u7801\u7ba1\u6570\u5b57\u8868_6\": {\"\u68c0\u6d4b\u6846\u5750\u6807\": [269, 371, 764, 849], \"\u68c0\u6d4b\u7ed3\u679c\": \"\"}, \"\u6570\u7801\u7ba1\u6570\u5b57\u8868_7\": {\"\u68c0\u6d4b\u6846\u5750\u6807\": [1463, 375, 1946, 851], \"\u68c0\u6d4b\u7ed3\u679c\": \"\"}, \"detect_image\": {\"\u68c0\u6d4b\u56fe\u7247\":
时间: 2023-07-24 07:16:04 浏览: 218
返回的结果中,中文仍然显示为乱码。这可能是由于打印结果时的字符编码不匹配导致的。你可以尝试在打印结果之前,将乱码转换为正确的中文字符编码。可以使用`URLDecoder`类来进行解码。请尝试修改代码如下:
```java
import java.net.URLDecoder;
public static String send(String addr, String filepath) throws IOException {
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("text/plain; charset=utf-8");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("files", filepath,
RequestBody.create(MediaType.parse("application/octet-stream"),
new File(filepath)))
.build();
Request request = new Request.Builder()
.url(addr)
.method("POST", body)
.build();
Response response = client.newCall(request).execute();
if (response.code() == 200) {
String result = URLDecoder.decode(response.body().string(), "UTF-8"); // 解码乱码内容
return result;
}
return null;
}
```
请替换原来的`send`方法中的代码,并重新运行看看是否能够正确显示中文内容。
阅读全文