【发布时间】:2015-01-28 18:41:44
【问题描述】:
我在 JSP 页面中接收缓冲区中的一些信息,我设法用它构建一个数组。我的问题是,如何将此字符串对象解析为 json 对象并获取值,以便最终将其打印在每行的 notepad.txt 行上。
JSP页面获取缓冲数据
<%@ page import="java.io.BufferedReader"%>
<%
try {
String body = null;
StringBuilder stringBuilder = new StringBuilder();
BufferedReader bufferedReader = null;
try {
// aqui está o ponto: tem que abrir uma stream e ler os bytes, não vem pronto.
bufferedReader = request.getReader();
char[] charBuffer = new char[128];
int bytesRead = -1;
// precisa ler todos os caracters do buffer de entrada do request.
while ((bytesRead = bufferedReader.read(charBuffer)) > 0) {
stringBuilder.append(charBuffer, 0, bytesRead);
}
} catch (Exception ex) {
throw ex;
} finally {
if (bufferedReader != null) {
try {
bufferedReader.close();
} catch (Exception ex) {
throw ex;
}
}
}
// pronto aqui está o conteúdo da chamada
body = stringBuilder.toString();
System.out.println("Body:["+body+"]");
} catch (Exception e) {
e.printStackTrace();
} finally {
}
%>
正文:
[
[
{
"summary": {
"externalInputs": [],
"accessPointId": 2,
"authorizedCount": 0,
"closedTime": null,
"detectedCount": 0,
"endTime": 1422493644041,
"enteredCount": 0,
"eventId": 12760,
"identifiedCount": 0,
"openedTime": null,
"siteId": 1,
"startTime": 1422493583912,
"systemFailure": null,
"unlockedTime": null,
"assistanceRequested": false,
"blacklistedPersonDetected": false,
"doorOpenedManually": false,
"doorRemainedOpen": false,
"hasEnded": true,
"tailgatingDetected": false,
"wasDoorOpened": false
},
"entityDetailList": []
}
]
]
为了简化我的问题,我需要解析这个数组以打印在 notepad.txt 中,每行一行。
【问题讨论】:
标签: java arrays json jsp bufferedreader