簡體   English   中英

將逗號分隔的String轉換為Json字符串

[英]Convert comma separated String into Json string

String input = "Vish,Path,123456789";

預期輸出為Json字符串,並且線程安全= {“name”:“Vish”,“surname”:“Path”,“mobile”:“123456789”}

我試過用

 GsonBuilder gsonBuilder = new GsonBuilder(); 
 Gson gson = gsonBuilder.create(); 

但每次我創建新對象 -

MappingObject[] studentArray = new MappingObject[1]; 
studentArray[0] = new MappingObject("Vish","Path","123456789"); 

我用split()分隔了這個逗號分隔的字符串

 System.out.println("JSON "+gson.toJson(studentArray));

如果您不想使用任何庫,則必須用逗號分隔字符串並創建一個新String

String input = "Vish,Path,123456789";
String[] values=input.split("[,]");
StringBuffer json = new StringBuffer();// StringBuffer is Thread Safe
json.append("{")
    .append("\"name\": \"").append(values[0]).append("\",")
    .append("\"surname\": \"").append(values[1]).append("\",")
    .append("\"mobile\": \"").append(values[2]).append("\"")
    .append("}");
System.out.println(json.toString());

輸出:

{“name”:“Vish”,“surname”:“Path”,“mobile”:“123456789”}

如果你想使用圖書館,那么你將獲得Jackson這一點。 簡單地制作一個類並通過它制作json。

public class Person {
  private String name;
  private String surname;
  private String mobile;

  // ... getters and Setters
}

String input = "Vish,Path,123456789";
String[] values=input.split("[,]");
Person person = new Person(values[0],values[1],values[2]);// Assume you have All Argumets Constructor in specified order  
ObjectMapper mapper = new ObjectMapper(); //com.fasterxml.jackson.databind.ObjectMapper;
String json = mapper.writeValueAsString(person);

您將不得不創建一個地圖:

Map<String,String> jsonMap = new HashMap<String,String>();
jsonMap.put("name","Vish");
jsonMap.put("surname","Path");
jsonMap.put("mobile","123456789");

然后使用com.google.gson JSONObject:JSONObject jsonObj = new JSONObject(jsonMap);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM