1. 怎么将字符串转换成json字符串
字符串转换成JSON的三种方式
采用Ajax的项目开发过程中,e79fa5e98193e4b893e5b19e31333363383465经常需要将JSON格式的字符串返回到前端,前端解析成JS对象(JSON )。
ECMA-262(E3) 中没有将JSON概念写到标准中,但在 ECMA-262(E5) 中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法。
1,eval方式解析,恐怕这是最早的解析方式了。
function strToJson(str){
var json = eval('(' + str + ')');
return json;
}
记得str两旁的小括号哦。
2,new Function形式,比较怪异哦。
function strToJson(str){
var json = (new Function("return " + str))();
return json;
}
IE6/7中当字符串中含有换行(/n)时,new Function不能解析,但eval却可以。
3,使用全局的JSON对象。
function strToJson(str){
return JSON.parse(str);
}
目前IE8(S)/Firefox3.5+/Chrome4/Safari4/Opera10 已实现了该方法。
使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下
1
2
var str = '{name:"jack"}';
var obj = JSON.parse(str); // --> parse error
name没有用引号引起来,使用JSON.parse所有浏览器中均抛异常,解析失败。而前两种方式则没问题。
2. java 怎么将string转为json数据
string转json有三种方法:
第一种:string直接转json
String json = "{/"2/":/"efg/",/"1/":/"abc/"}"; JSONObject json_test =
JSONObject.fromObject(json); 将string的双引号转义即可,适用于字符串较短的
第二种:将string转为list后转为json
Listlist = new ArrayList(); list.add("username");
list.add("age"); list.add("sex"); JSONArray array = new JSONArray();
array.add(list);
可以使用list的add函数将需要的字符串拼接即可,但是这个只能使用jsonarry
第三种:将string转为map后转为json
Mapmap = new HashMap();
map.put("1", "abc");
map.put("2", "efg");
JSONArray array_test = new JSONArray();
array_test.add(map);
JSONObject jsonObject = JSONObject.fromObject(map);
这里使用map就可以将字符串转化为JSONArray或者JSONObject都可以,但是这里的键不能使用int型
3. java怎么把字符串转成json字符串
@RequestMapping(value = "updateInvestorApplyAccountNo", method = RequestMethod.POST)
@ResponseBody
public void updateInvestorApplyAccountNo(HttpServletRequest request,
HttpServletResponse response,
@RequestBody String requestBody) {
int num = 0;
String result = "";
//下面是把拿到的json字符串转成 json对象
JSONObject jsStr = JSONObject.parseObject(requestBody); //将字符串{“id”:1}
//int jsID = Integer.parseInt(jsStr.getString("id"));//获取id的值
/**
* json对象转换成java对象
*/
InvestorApplyModel stud = (InvestorApplyModel) JSONObject.toJavaObject(jsStr,InvestorApplyModel.class);
}
4. 怎么把string转换成json字符串
public class Demo {
public static void main(String[] args) {
String s = "ssssssssssssssssssssssssssssssss";//"{'s':'ssss','x':'xxxxx','c':'cccccc'}";//这边要拼接好是json格式
JSONObject json = JSONObject.parseObject(s);
System.out.println(json.toString());
}
}
5. 怎么把字符串转换成json对象
转换方法:百importjava.io.*;importorg.json.*;publicclassDemo{publicstaticvoidmain(String[]args)throwsException{Stringstr="{/"id_no/":/"342422198012001122/",/"mobile_no/":/"13666667789/",/"name/":/"徐丽/"}";JSONObjectobj=newJSONObject(str);//在这度里转知换。
System.out.println(obj);System.out.println(obj.get("id_no"));//"342422198012001122"}}要引入道fast-json的包或者开内源容的包json.jar。
6. 怎样将字符串转换成json数组
HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
New Document
var t="{'firstName': 'cyra', 'lastName': 'richardson', 'address': { 'streetAddress': '1 Microsoft way', 'city': 'Redmond', 'state': 'WA', 'postalCode': 98052 },'phoneNumbers': [ '425-777-7777','206-777-7777' ] }";
var jsonobj=eval('('+t+')');
alert(jsonobj.firstName);
alert(jsonobj.lastName);
var t2="[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] ";
var myobj=eval(t2);
for(var i=0;ialert(myobj[i].name);
alert(myobj[i].age);
}
var t3="[['14113295100','社旗县国税局桥头税务所','社旗县城郊乡长江路西段']]";
//通过eval() 函数可以将JSON字符串转化为对象
var obj = eval(t3);
for(var i=0;ifor(var j=0;jalert(obj[i][j]);
}
}
/*
//stringifier 函数的作用跟 parse 相反, 用来将一个js对象转换为 JSON 文本。
var jsonText = JSON.stringify(obj);
alert(jsonText);
//如果基于安全的考虑的话,最好是使用一个 JSON 解析器。 一个 JSON 解析器将只接受 JSON 文本。所以是更安全的。
var myObject = JSON.parse(myJSONtext, filter);
//可选的 filter 参数将遍历每一个value key 值对, 并进行相关的处理。如:
//如
myData = JSON.parse(text, function (key, value) {
return key.indexOf('date') >= 0 ? new Date(value) : value; });
//stringifier 函数的作用跟 parse 相反, 用来将一个js对象转换为 JSON 文本。
var myJSONText = JSON.stringifier(myObject);
*/
7. 如何把一串字符串再解析成json
比如我有两个变量,我要将a转换成字符串,将b转换成JSON对象:var a={"name":"tom","sex":"男","age":"24"}var b='{"name":"Mike","sex":"女","age":"29"}';在Firefox,chrome,opera,safari,ie9,ie8等高级浏览器直接可以用JSON对象的stringify()和parse()方法。
JSON.stringify(obj)将JSON转为字符串。JSON.parse(string)将字符串转为JSON格式;上面的转换可以这么写:var a={"name":"tom","sex":"男","age":"24"};var b='{"name":"Mike","sex":"女","age":"29"}';var aToStr=JSON.stringify(a);var bToObj=JSON.parse(b);alert(typeof(aToStr)); //stringalert(typeof(bToObj));//objectJSON.stringify()ie8(兼容模式),ie7和ie6没有JSON对象,不过/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。
ie8(兼容模式),ie7和ie6可以使用eval()将字符串转为JSON对象,var c='{"name":"Mike","sex":"女","age":"29"}';var cToObj=eval("("+c+")");alert(typeof(cToObj));jQuery中也有将字符串转为JSON格式的方法jQuery.parseJSON( json ),接受一个标准格式的 JSON 字符串,并返回解析后的 JavaScript (JSON)对象。当然如果有兴趣可以自己封装一个jQuery扩展,jQuery.stringifyJSON(obj)将JSON转为字符串。
js,jquery把json格式转化为对象类型$(function () {var jsonStr = "[{ /"city/": /"Beijing/",/"street/": /" Chaoyang Road/", /"postcode/": /"100025 /"},{ /"city/": /"上海/",/"street/": /" h/", /"postcode/": /"h /"}]"//json格式var jsonS = $.parseJSON(jsonStr); //jquery的.parseJSON()方法for (var i = 0; i < jsonS.length; i++) {var json = jsonS[i];alert(json.city); //结果为 输出2次 一次北京 一次上海}});function () {var jsonStr = "[{ /"city/": /"Beijing/",/"street/": /" Chaoyang Road/", /"postcode/": /"100025 /"},{ /"city/": /"上海/",/"street/": /" h/", /"postcode/": /"h /"}]"//json格式var jsonS = eval(jsonStr); //js的eval()方法for (var i = 0; i < jsonS.length; i++) {var json = jsonS[i];alert(json.city); //结果为 输出2次 一次北京 一次上海}}。
8. 如何把一个字符串转换成jsonarray
知道org.json.jar吗 这个应该可以解决你的问题。
给你写了个例子
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class TestJsonArray {
public static void main(String[] args) throws Exception {
// String sJSON = "[{a:'b'},{a:'c'}]";// 测试用的JSON数组
// String sJSON = "{a:'b'}";//测试用的JSON对象
String sJSON = "{a:'b'";// 测试用的非法JSON
try {
JSONArray array = new JSONArray(sJSON);
for (int i = 0; i < array.length(); i++) {
JSONObject iObj = array.getJSONObject(i);
System.out.println(iObj.get("a"));
}
} catch (JSONException e) {// 抛错 说明JSON字符不是数组或根本就不是JSON
try {
JSONObject object = new JSONObject(sJSON);
System.out.println(object.get("a"));
} catch (JSONException e2) {// 抛错 说明JSON字符根本就不是JSON
System.out.println("非法的JSON字符串");
}
}
}
}