Java/JSON.simple-在斜杠之前打印反斜杠
我正在通过Java和json.simple库将一些数据打印到一个json文件中,但每当一个ther是一个斜杠时,就会添加一个反斜杠,如:Java/JSON.simple-在斜杠之前打印反斜杠,java,json,escaping,backslash,slash,Java,Json,Escaping,Backslash,Slash,我正在通过Java和json.simple库将一些数据打印到一个json文件中,但每当一个ther是一个斜杠时,就会添加一个反斜杠,如: "thing":[ {"file":"Screenshot_from_2018-07-12_14-41-19.png", "currentDateTime":"02\/08\/2018 15:11:14", "selectedDate":"02\/08\/2018", "uri":"\/var\/stuff\/fi
"thing":[
{"file":"Screenshot_from_2018-07-12_14-41-19.png",
"currentDateTime":"02\/08\/2018 15:11:14",
"selectedDate":"02\/08\/2018",
"uri":"\/var\/stuff\/files\/Screenshot_from_2018-07-12_14-41-19.png",
"user":"user"}
]
它发生在我们将映射传递给JSONObject的时刻:
map.put("file", fileNameFormat);
map.put("uri", filesPath + "/" + service + "/" + fileNameFormat);
map.put("user", user);
map.put("selectedDate", selectedDate);
map.put("currentDateTime", currentDateTime);
JSONObject json = new JSONObject(map); //HERE
我认为当我进一步开发实用程序时,这将是一个问题。为什么会发生这种情况?我该如何绕过它?提前感谢。这样做是为了允许脚本标记中包含json字符串,正如这个问题所解释的: 在javascript端,它将按预期进行读取。
JavaScript中的
'\/'=='/'
,JSON是有效的JavaScript
为了用Java处理所有事情,可以使用Gson。请检查使用Gson将Json转换为对象的链接:这样做是为了允许脚本标记中包含Json字符串,如此问题所述: 在javascript端,它将按预期进行读取。
JavaScript中的
'\/'=='/'
,JSON是有效的JavaScript
为了用Java处理所有事情,可以使用Gson。请检查使用Gson将Json转换为对象的链接:Json.simple如下所示。斜杠和各种其他控制序列都应转义
这不会以任何方式限制您的应用程序,因为JavaScript会将其识别为一个简单的“/” JSON.simple遵循以下命令。斜杠和各种其他控制序列都应转义
这不会以任何方式限制您的应用程序,因为JavaScript会将其识别为一个简单的“/” 您可以使用GSON库来实现这一点 比如说,
HashMap<String, String> map = new HashMap<>();
map.put("file", "file");
map.put("uri", "Your_filesPath" + "/" + "Your_service" + "/" + "Your_fileNameFormat");
map.put("user", "user");
map.put("selectedDate", "selectedDate");
map.put("currentDateTime", "currentDateTime");
Gson gson = new Gson();
String json = gson.toJson(map);
System.out.println(json);
HashMap map=newhashmap();
map.put(“文件”、“文件”);
put(“uri”、“您的_文件路径”+“/”+“您的_服务”+“/”+“您的_文件名格式”);
地图放置(“用户”、“用户”);
地图放置(“选定日期”、“选定日期”);
map.put(“currentDateTime”、“currentDateTime”);
Gson Gson=新的Gson();
字符串json=gson.toJson(map);
System.out.println(json);
放置GSON依赖项,并希望它与GSON库一起工作。您可以使用GSON库来实现这一点 比如说,
HashMap<String, String> map = new HashMap<>();
map.put("file", "file");
map.put("uri", "Your_filesPath" + "/" + "Your_service" + "/" + "Your_fileNameFormat");
map.put("user", "user");
map.put("selectedDate", "selectedDate");
map.put("currentDateTime", "currentDateTime");
Gson gson = new Gson();
String json = gson.toJson(map);
System.out.println(json);
HashMap map=newhashmap();
map.put(“文件”、“文件”);
put(“uri”、“您的_文件路径”+“/”+“您的_服务”+“/”+“您的_文件名格式”);
地图放置(“用户”、“用户”);
地图放置(“选定日期”、“选定日期”);
map.put(“currentDateTime”、“currentDateTime”);
Gson Gson=新的Gson();
字符串json=gson.toJson(map);
System.out.println(json);
放置GSON依赖项,并希望它能与GSON库一起工作。对于这一点,json simple中没有解决方法。他们已经为此打开了一个bug:json simple中不可能有解决方法。他们已经有了一个漏洞:谢谢你的信息。这个.json文件应该只由Java处理,Java程序会在某个阶段再次读取它,所以我担心这个转义的斜杠在读取时会出现问题。Java会理解它们是转义斜杠吗?您可以使用Gson将Json转换为Java对象。谢谢您提供的信息。这个.json文件应该只由Java处理,Java程序会在某个阶段再次读取它,所以我担心这个转义的斜杠在读取时会出现问题。Java会理解它们是转义斜杠吗?您可以使用Gson将Json转换为Java对象。