Java 将逗号分隔的字符串转换为Json字符串
预期输出为Json字符串,线程安全={“名称”:“Vish”,“姓氏”:“Path”,“mobile”:“123456789”} 我试着用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()分隔了这个逗号分隔的字符串 如果您不想使用任何库,则必须用逗号拆分字符
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");