JSON 数据格式介绍


1,基础
这篇文章讲的比较深入,所以不用我画蛇添足了,只是下面这段代码很好的演示了JSON如何处理字符串数据,保存下来备查:
zt from:https://www.ibm.com/developerworks/cn/web/wa-lo-json/
将 String 对象编码为 JSON 格式时,只需处理好特殊字符即可。另外,必须用 (") 而非 (') 表示字符串:

复制代码 代码如下:

static String string2Json(String s) {
StringBuilder sb = new StringBuilder(s.length()+20);
sb.append('\"');
for (int i=0; i<s.length(); i++) {
char c = s.charAt(i);
switch (c) {
case '\"':
sb.append("\\\"");
break;
case '\\':
sb.append("\\\\");
break;
case '/':
sb.append("\\/");
break;
case '\b':
sb.append("\\b");
break;
case '\f':
sb.append("\\f");
break;
case '\n':
sb.append("\\n");
break;
case '\r':
sb.append("\\r");
break;
case '\t':
sb.append("\\t");
break;
default:
sb.append(c);
}
}
sb.append('\"');
return sb.toString();
}

2,在PHP中的应用。
PHP中使用json_encode和json_decode来进行JSON封装和拆装。
封装string类型数据:json_encode在输出结果中,会在源字符串两端加上("),如对象内容是(abc),结果是("abc”)
封装stdClass对象类型数据:比如有个"value”成员内容是字符串,结果是:{"value":"\u5e7f\u4e1c\u4f53\u80b2,CCTV5"}
3,为什么要写这个。
ZenTaoPHP框架中,请求类型如果是“json”,输出结果会以JSON格式封装,但在对输出信息进行分析时,发现并非标准的JSON格式。
深究后,发现ZenTaoPHP对一部分数据进行了二次JSON封装,输出类似:"{\"value\":\"\\u5e7f\\u4e1c\\u4f53\"}" 这样的结果。



相关阅读:
网络通讯--smbd(samba deamon)
jquery ready函数源代码研究
HTML表格标记教程(7):背景颜色属性BGCOLOR
DBA的SQL Server 2005备份维护计划
小技巧:开启 GNOME 的窗口分组功能
原创]比较详细的完美解决安装sql2000时出现以前的某个程序安装已在安装计算机上创建挂起的文件操作。" target="_blank">[原创]比较详细的完美解决安装sql2000时出现以前的某个程序安装已在安装计算机上创建挂起的文件操作。
Linux 操作系统的用户和用户组管理
jQuery 学习 几种常用方法
使用CSS+XHTML制作的下拉菜单(代码)
jQuery 位置插件
ASP语法注释
HTML5能否取代Flash
jQuery ui 1.7更新小结
写个设置命令的VBS脚本代码
快速导航

Copyright © 2016 phpStudy |