我有这个java方法:public class ReadIssues { // Reads from a Json object protected JsonArray readJson() throws IOException { JsonArray issueArray = null; ClassLoader cl = Thread.currentThread().getContextClassLoader(); // Get input stream for reading the specified resource InputStream inputStream = cl.getResourceAsStream("GitHubIssue.json"); // Create JsonReader to read JSON data from a stream Reader reader = new InputStreamReader(inputStream, "UTF-8"); JsonReader jsonReader = Json.createReader(reader); try{ // Create an object model in memory issueArray = jsonReader.readArray(); System.out.println("ReadIssues issueArray: " + issueArray); } finally { if (inputStream != null) { inputStream.close(); } if (jsonReader != null) { jsonReader.close(); } } return issueArray; }它抛出这个异常:Exception in thread "main" javax.json.stream.JsonParsingException: Unexpected char 117 at (line no=1, column no=5, offset=4) at org.glassfish.json.JsonTokenizer.unexpectedChar(JsonTokenizer.java:601) at org.glassfish.json.JsonTokenizer.nextToken(JsonTokenizer.java:418) at org.glassfish.json.JsonParserImpl$ObjectContext.getNextEvent(JsonParserImpl.java:453) at org.glassfish.json.JsonParserImpl.next(JsonParserImpl.java:363) at org.glassfish.json.JsonParserImpl.getObject(JsonParserImpl.java:333) at org.glassfish.json.JsonParserImpl.getValue(JsonParserImpl.java:182) at org.glassfish.json.JsonParserImpl.getArray(JsonParserImpl.java:326) at org.glassfish.json.JsonParserImpl.getArray(JsonParserImpl.java:164) at org.glassfish.json.JsonReaderImpl.readArray(JsonReaderImpl.java:129) at paulcarron.issuetracker.ReadIssues.readJson(ReadIssues.java:42) at paulcarron.issuetracker.App.main(App.java:22)问题似乎是issueArray = jsonReader.readArray();。我认为body我的 JSON 中的值包含\n和等字符\r。我遇到了一个帖子,建议做类似的事情,json = json.replaceAll("\r?\n", "");但那json是String. 在我使用 JsonReader 对象的情况下,我应该怎么做?
添加回答
举报
0/150
提交
取消