我想解析类型为String的JSON中的数据. 我用的是Google Gson美元.

我有:

jsonLine = "
{
 "data": {
  "translations": [
   {
    "translatedText": "Hello world"
   }
  ]
 }
}
";

我的班级是:

public class JsonParsing{

   public void parse(String jsonLine) {

      // there I would like to get String "Hello world"

   }

}

推荐答案

这是一个简单的代码,我避免了所有的判断,但这是主要的 idea .

 public String parse(String jsonLine) {
    JsonElement jelement = new JsonParser().parse(jsonLine);
    JsonObject  jobject = jelement.getAsJsonObject();
    jobject = jobject.getAsJsonObject("data");
    JsonArray jarray = jobject.getAsJsonArray("translations");
    jobject = jarray.get(0).getAsJsonObject();
    String result = jobject.get("translatedText").getAsString();
    return result;
}

为了使用法更通用,你会发现Gson's javadocs个是相当清楚和有帮助的.

Java相关问答推荐

AWS Java SDK 2(putTarget)+ MinIO:不支持您提供的授权机制.请使用AWS 4-HMAC-SHA 256

当在具有约束布局的AlertDialogue内部使用时,回收器视图布局宽度很奇怪

Java SSLocket查明客户端是否发送了证书

是否有一种格式模式,可以在除0之外的数字前面有正负符号?

在URL类图中表示Java swing类

伪类focus-in不适用于PFA中的选项卡

如何在Java中声明未使用的变量?

Java函数式编程中的双值单值映射

springboot start loge change

Java .类参数不通过构造函数传递

将不受支持的时区UT重写为UTC是否节省?

如何在代码中将行呈现在矩形前面?

如何将Pane的图像快照保存为BMP?

Java泛型类方法的静态返回类型是否被类型擦除?

是否有一个Java Future实现可以在池繁忙时在调用者线程中执行?

S数学.exp的相同错误保证也适用于StrictMath.exp吗?

在Java中将.GRF转换为图像文件

如何在右击时 Select 新行?

[jdk21][Foreign Function&;Memory API]MemoryLayout::varHandle通过可变数组进行 struct 化的问题

spring 更新多项管理关系