Java 将逗号分隔的字符串转换为Json字符串

Java 将逗号分隔的字符串转换为Json字符串,java,json,string,Java,Json,String,预期输出为Json字符串,线程安全={“名称”:“Vish”,“姓氏”:“Path”,“mobile”:“123456789”} 我试着用 String input = "Vish,Path,123456789"; 但每次我创建新对象时- GsonBuilder gsonBuilder = new GsonBuilder(); Gson gson = gsonBuilder.create(); 我使用split()分隔了这个逗号分隔的字符串 如果您不想使用任何库,则必须用逗号拆分字符

预期输出为Json字符串,线程安全={“名称”:“Vish”,“姓氏”:“Path”,“mobile”:“123456789”}

我试着用

String input = "Vish,Path,123456789";
但每次我创建新对象时-

 GsonBuilder gsonBuilder = new GsonBuilder(); 
 Gson gson = gsonBuilder.create(); 
我使用split()分隔了这个逗号分隔的字符串


如果您不想使用任何库,则必须用逗号拆分字符串,并生成一个新的
字符串

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

{“姓名”:“面容”、“姓氏”:“路径”、“手机”:“123456789”}

如果你想使用这个库,你可以通过
Jackson
来实现。Simple创建一个类并通过它生成json

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());

您必须创建一个地图:

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 jsonMap=newhashmap();
jsonMap.put(“名称”、“面容”);
jsonMap.put(“姓氏”、“路径”);
jsonMap.put(“移动”、“123456789”);
然后使用com.google.gson JSONObject:
JSONObject jsonObj=新的JSONObject(jsonMap)

你面临什么问题?@sidgate我尝试使用GsonBuilder=new GsonBuilder();Gson-Gson=gsonBuilder.create();但每次我创建新对象时-MappingObject[]studentArray=new MappingObject[1];studentArray[0]=新映射对象(“Vish”、“Path”、“123456789”);我使用split()System.out.println(“JSON”+gson.toJson(studentArray))分隔了这个逗号分隔的字符串;所以,我只想创建单个对象,即使我使用多个学生,转换过程也应该是线程安全的
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");