使用io.vertx.core.Json库读取JAVA中的Json文件

使用io.vertx.core.Json库读取JAVA中的Json文件,java,json,vert.x,jsonparser,Java,Json,Vert.x,Jsonparser,我想读取java中的.json文件并将其键入JsonObject。请建议使用json而不是json的代码。我使用的是io.vertx.core.json.JsonObject库 Object obj = parser.parse(new FileReader()); //this is from library simple.ore.JSON. JsonObject obj1; obj1 = (JsonObject)(obj); 我尝试将JSONparser用于文件读取器,该读取器提供JSON

我想读取java中的.json文件并将其键入JsonObject。请建议使用json而不是json的代码。我使用的是
io.vertx.core.json.JsonObject库

Object obj = parser.parse(new FileReader()); //this is from library simple.ore.JSON.
JsonObject obj1;
obj1 = (JsonObject)(obj);
我尝试将JSONparser用于文件读取器,该读取器提供JSONObject,但我需要JSONObject


java.lang.ClassCastException:org.json.simple.JSONObject无法强制转换为io.vertx.core.json.JSONObject。
问题在于,您正在使用另一个库中的解析器,并希望获得
io.vertx.core.json.JSONObject
的实例。相反,将包含JSON文本的文件读入Java字符串。请注意,可以使用以下方法执行此操作。然后,使用
JsonObject
的构造函数。例如,您可以使用类似于以下代码的代码:

String jsonStr = IOUtils.toString(new FileReader(myFileName));
JsonObject jsonObj = new JsonObject(jsonStr);

希望有帮助

请参阅,您需要使用org.json.simple.JSONObject或io.vertx.core.json.JSONObject。这两个提供程序是不同的,另一方面,类JsonObject扩展了对象实现Iterable、io.vertx.core.shareddata.impl.ClusterSerializable、Shareable和公共类JsonObject扩展了java.util.HashMap实现了java.util.Map、JSONAware、JSONStreamWare,因此您可以看到它们之间的区别,还要记住,FileReader会阻止eventqueue,因此vertx有自己的文件系统工具:vertx.filesystem().readFile(…)