尝试执行这段代码时:
public void load(String filename) {
FileHandle file = Gdx.files.external(filename + ".bim");
Json json = new Json();
String text = file.readString();
datamap.clear();
datamap = json.fromJson(HashMap.class, text);
我收到一个错误:
线程“LWJGL 应用程序”com.badlogic.gdx.utils.GdxRuntimeException 中的异常:com.badlogic.gdx.utils.SerializationException:无法创建类(缺少无参数构造函数):com.bvo.easyBim.Model.Cursor 在 com .badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:113) 原因:com.badlogic.gdx.utils.SerializationException:无法创建类(缺少无参数构造函数):com.bvo.easyBim .Model.Cursor 在 com.badlogic.gdx.utils.Json.newInstance(Json.java:915) 在 com.badlogic.gdx.utils.Json.readValue(Json.java:793) 在 com.badlogic.gdx.utils .Json.readValue(Json.java:803) 在 com.badlogic.gdx.utils.Json.fromJson(Json.java:644) 在 com.bvo.easyBim.View.DataProcessor.load(DataProcessor.java:85) 在com.bvo.easyBim.View.World.init(World.java:115) 在 com.bvo.easyBim.View。WorldRenderer.buttons(WorldRenderer.java:173) at com.bvo.easyBim.View.WorldRenderer.render(WorldRenderer.java:106) at com.bvo.easyBim.Screens.AppScreen.render(AppScreen.java:22) at com .badlogic.gdx.Game.render(Game.java:46) 在 com.bvo.easyBim.EasyBim.render(EasyBim.java:39) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java :187) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:110) 引起:java.lang.InstantiationException:com.bvo.easyBim.Model.Cursor at java.lang.Class。 newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at com.badlogic.gdx.utils.Json.newInstance(Json.java:901) ... 12 更多106) 在 com.bvo.easyBim.Screens.AppScreen.render(AppScreen.java:22) 在 com.badlogic.gdx.Game.render(Game.java:46) 在 com.bvo.easyBim.EasyBim.render(EasyBim .java:39) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:187) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:110) : java.lang.InstantiationException: com.bvo.easyBim.Model.Cursor at java.lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at com.badlogic.gdx.utils.Json .newInstance(Json.java:901) ... 12 更多106) 在 com.bvo.easyBim.Screens.AppScreen.render(AppScreen.java:22) 在 com.badlogic.gdx.Game.render(Game.java:46) 在 com.bvo.easyBim.EasyBim.render(EasyBim .java:39) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:187) 在 com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:110) : java.lang.InstantiationException: com.bvo.easyBim.Model.Cursor at java.lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at com.badlogic.gdx.utils.Json .newInstance(Json.java:901) ... 12 更多mainLoop(LwjglApplication.java:187) at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:110) 原因:java.lang.InstantiationException: com.bvo.easyBim.Model.Cursor at java .lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at com.badlogic.gdx.utils.Json.newInstance(Json.java:901) ... 12 更多mainLoop(LwjglApplication.java:187) at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:110) 原因:java.lang.InstantiationException: com.bvo.easyBim.Model.Cursor at java .lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at com.badlogic.gdx.utils.Json.newInstance(Json.java:901) ... 12 更多
在将 json 文件正确保存在另一段代码中后,我正在尝试将其转换回数据映射。(哈希图)但这似乎不起作用。
我猜他无法阅读文本字符串,但我实际上不知道问题是什么。