我在 Java 项目中使用 GSON 以 JSON
格式对数据(从数据库获取并存储到 String
数组中)进行编码。一切看起来都不错,但问题在于 String
的大小。例如,我有以下 String
数组:
String [] data = new String[12];
假设我的 String
数组包含以下数据:{"ABC", "DEF", "GH", "IJ"}
那么编码后的 JSON 数据为:["ABC", "DEF", "GH", "IJ", "\u0000", null, null, null, null, null, null]
JSON 数据中空值的数量取决于我的 String
数组中可用数据的数量。
由于数据是从数据库检索的,因此我无法声明 String
数组的特定大小。
我使用以下代码将 String
数据编码为 JSON
格式。
Gson gs = new Gson();
gs.toJson(data); //data String array contains data from database
谁能告诉我如何从 JSON 数据中跳过/删除这些空值?
最佳答案
如果您不喜欢使用数组大小,请使用 ArrayList
并将数据库中的每个结果添加到其中。然后,当您完成数据库方面的事情后:
data = arrayList.toArray(new String[arrayList.size()]);
这可以保证 data
对象的大小正好适合保存您的数据。
关于java - 如何使用GSON将String数组数据正确编码为JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36696090/