将excel工作表中的json结构解析为java

将excel工作表中的json结构解析为java,java,json,excel,apache-poi,Java,Json,Excel,Apache Poi,我有一个excel中的数据表,我需要用java读取,我能够读取正常内容,但无法读取我存储的json结构。如何将json从excel解析为java public class JavaApplication1 { public static void main(String[] args) { try { for (int i=0;i<5;i++) { FileInputStream fileInputStream = new FileInput

我有一个excel中的数据表,我需要用java读取,我能够读取正常内容,但无法读取我存储的json结构。如何将json从excel解析为java

public class JavaApplication1 {
public static void main(String[] args) {
    try {
      for (int i=0;i<5;i++)
      {
        FileInputStream fileInputStream = new FileInputStream("C://users/user/Desktop/C.xls");
        HSSFWorkbook workbook = new HSSFWorkbook(fileInputStream);
        HSSFSheet worksheet = workbook.getSheet("POI Worksheet");
        HSSFRow row1 = worksheet.getRow(0);

        HSSFCell cellC1 = row1.getCell((short) 2);
        String c1Val = cellC1.getStringCellValue();
        HSSFCell cellD1 = row1.getCell((short) 3);
        double d1Val = cellD1.getNumericCellValue();
        HSSFCell cellE1 = row1.getCell((short) 4);
        String e1Val = cellE1.getStringCellValue();
        System.out.println("C1: " + c1Val);
        System.out.println("D1: " + d1Val);
        System.out.println("E1: " + e1Val);

        JSONObject obj = new JSONObject();

        obj.put("name", new c1Val);

        System.out.print(obj);
                    }
            } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
  }
}

这个数据需要从c列中读取,我需要从15到58读取一个变量。。我该怎么做

您可以像这样在一行中将JSON解析为Java对象

如果您的Json字符串值位于
c1Val
中,那么您的Json代码将如下所示

Map<String,Object> c_data = mapper.readValue(c1Val, Map.class);
String minimum = c_data.get("minimum");
String maximum= c_data.get("maximum");
Map c_data=mapper.readValue(c1Val,Map.class);
字符串最小值=c_data.get(“最小值”);
字符串最大值=c_data.get(“最大值”);

您的代码中有什么不起作用?@Gagravarr我无法将json结构解析到我的程序中,即{“type”:“int”、“minimum:15”、“maximum:58}。我该怎么做?通过解析这个结构,我需要在程序中读取15到58之间的1个值。使用gjson库读取json@swan我可以执行从以下json结构{“type”:“int”、“minimum:15”、“maximum”:58}中读取随机变量的操作吗?是的,如果使用Map get函数,可以从该json结构中读取任何值
Map<String,Object> c_data = mapper.readValue(c1Val, Map.class);
String minimum = c_data.get("minimum");
String maximum= c_data.get("maximum");