将字符串转换为json字符串[关闭]

问题描述 投票:-1回答:1

我有一个文件Person.Java

public class Person {
private String firstName;
private String lastName;
}

文件存储在以下位置:“ C:\ Users \ Person.Java”;该文件不是项目的一部分。

我已经编写了REST API端点,该端点接受此文件作为输入并读取此文件。

@PostMapping(value = "/poc/jsobj", produces = {APPLICATION_JSON_VALUE})
public ResponseEntity<ResponseMessage> convertToJson(@RequestParam("file") MultipartFile file) {

if (!file.isEmpty()) {
    byte[] bytes = file.getBytes();
    String completeData = new String(bytes);

    //what should I write here
}}

阅读后,我想将此文件的内容转换为JSON格式。

{
"firstName":" ",
"lastName":" "
}

因此,要求将java文件(一个类)作为控制器的输入,并生成相应的json字符串作为其输出。

java json string
1个回答
-1
投票

您可以使用一个简单的Java工具包,例如JSONSimple [https://code.google.com/archive/p/json-simple/]。来自tutorialspoint [https://www.tutorialspoint.com/json_simple/json_simple_quick_guide.htm]

的简单示例
    import org.json.simple.JSONArray;
    import org.json.simple.JSONObject;
    import org.json.simple.JSONValue;

    public class JsonDemo {
       public static void main(String[] args) {
          String s = "[0,{\"1\":{\"2\":{\"3\":{\"4\":[5,{\"6\":7}]}}}}]";
          Object obj = JSONValue.parse(s);
          JSONArray array = (JSONArray)obj;

          System.out.println("The 2nd element of array");
          System.out.println(array.get(1));
          System.out.println();

          JSONObject obj2 = (JSONObject)array.get(1);
          System.out.println("Field \"1\"");
          System.out.println(obj2.get("1"));    

          s = "{}";
          obj = JSONValue.parse(s);
          System.out.println(obj);

          s = "[5,]";
          obj = JSONValue.parse(s);
          System.out.println(obj);

          s = "[5,,2]";
          obj = JSONValue.parse(s);
          System.out.println(obj);
       }
    }

© www.soinside.com 2019 - 2024. All rights reserved.