如下如何转换成json啊各位大神

   {{id=3, name=zhangsan, phone=1592197****, chinaName=张三, address=成都,  times=Tue Jan 16 15:17:04 CST 2018}}

这字符串都不符合json规范,如果硬是要转的话就只能处理成符合规范的json,str.Replace("=",":'").Replace(",","',").Replace("{{","{").Replace("}}","}");

///
/// 生成JSON字符串
///
/// 生成json的对象
/// 是否格式化
///
public static string ToJson(object obj, bool formatjson)
{
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);

        IsoDateTimeConverter idtc = new IsoDateTimeConverter();
        idtc.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";

        JsonSerializer serializer = new JsonSerializer();
        serializer.Converters.Add(idtc);
        JsonWriter jw = new JsonTextWriter(sw);

        if (formatjson)
        {
            jw.Formatting = Formatting.Indented;
        }

        serializer.Serialize(jw, obj);

        //JsonConvert.SerializeObject(dt, idtc).ToString();

        return sb.ToString();
    }

调用这个方法就行了

  1. 首先你的将自己的这串东西,设置为标准的的JSON格式,不知你是在后台代码中转换呢,还是前台JS中进行转换。 a. 如果是在后台代码中,比如JAVA代码用正则的方式替换正则,eg:
 String json = "{{id=3, name=zhangsan, phone=1592197****, chinaName=张三, address=成都,  times=Tue Jan 16 15:17:04 CST 2018}}";
        json = json.replace("{", "").replace("}","").trim();
        Pattern r = Pattern.compile("([\\w]+)=([^,]+)([,]?)");
        Matcher m = r.matcher(json);
        json = m.replaceAll("\"$1\":\"$2\"$3");
        json = "{" + json + "}";
        System.out.println(json);
    b. 如果是js,也是类似的进行一次替换,eg:
 var json = "{{id=3, name=zhangsan, phone=1592197****, chinaName=张三, address=成都,  times=Tue Jan 16 15:17:04 CST 2018}}";
            json = json.replace("{{","").replace("}}","");
            var reg = /([\w]+)=([^,]+)([,]?)/g;
            var result = json.replace(reg,function(){
                return arguments[1]+":'"+arguments[2]+"'"+arguments[3];
            });
            result = eval('({' + result + '})');
            console.log(result);

如果是后台java代码:var str = "{{id=3, name=zhangsan, phone=1592197****, chinaName=张三, address=成都, times=Tue Jan 16 15:17:04 CST 2018}}";
var obj = JSON.parse(str)
如果是前台js : data=eval('('+data+')'); 用eval()函数就可以

var str = "{{id=3, name=zhangsan, phone=1592197****, chinaName=张三, address=成都, times=Tue Jan 16 15:17:04 CST 2018}}";
var obj = JSON.parse(str)

JSON.toJSONString("你要转的东西") 你试一下

var obj = eval('(' + str + ')');

var obj = str.parseJSON();

var obj = JSON.parse(str);

这只是String类字符串,含有=号的,不是规范的json数据。

{
"id":"3",
"name":"zhangsan",
"phone":"1592197****",
"chinaName":"张三",
"address":"成都",
"times":"Tue Jan 16 15:17:04 CST 2018"
}

JSON.toJSONString()

在网上有接送转换器啊

1>jQuery插件支持的转换方式:
复制代码 代码如下:

$.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象

2>浏览器支持的转换方式(Firefox,chrome,opera,safari,ie9,ie8)等浏览器:
复制代码 代码如下:

JSON.parse(jsonstr); //可以将json字符串转换成json对象
JSON.stringify(jsonobj); //可以将json对象转换成json对符串

注:ie8(兼容模式),ie7和ie6没有JSON对象,推荐采用JSON官方的方式,引入json.js。

3>Javascript支持的转换方式:
eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号
注:ie8(兼容模式),ie7和ie6也可以使用eval()将字符串转为JSON对象,但不推荐这些方式,这种方式不安全eval会执行json串中的表达式。

4>JSON官方的转换方式:
http://www.json.org/提供了一个json.js,这样ie8(兼容模式),ie7和ie6就可以支持JSON对象以及其stringify()和parse()方法;
可以在https://github.com/douglascrockford/JSON-js上获取到这个js,一般现在用json2.js。

var jsons = {};
jsons["id"] = 3;
jsons["name"] = zhangsan;

var str = '{{id=3,name=zhangsan,phone=1592197****,chinaName=张三,address=成都,times=Tue Jan 16 15:17:04 CST 2018}}';

//替换成json字符串格式
str = str.replace(new RegExp("=","g"),"\":\"").replace(new RegExp(",","g"),"\",\"").replace("{{","{\"").replace("}}","\"}");

//转成json对象
var json = JSON.parse(str);

这种处理治标不治本,最好后台组装好json格式字符串,前端直接用

可以试下fastjson试试

你可以把弄成一个字符串,将其封装JSONArray, 解析在封装为JSONObject 就完事了

先对你的字符串进行处理,转化为标准的json

JSONObject json = JSONObject.fromObject();

如果是只想转换类似的字符串,直接将“=”用'':'替换,“,”(中文的逗号)用“,”替换;
String 类的方法str.Replace(需要被替换的值, 替换的值)这个方法可以做到。

com.alibaba.fastjson.JSON.toJSON(object)