json串直接保存后,没有格式的话字符连在一起,可读性很差。下面2种方法输出有格式的字符串以便阅读,如果用as3语言,推荐使用JSON.stringify带格式化参数的方式(这个参数以前一直没注意到)。
/**
* 格式化json串显示
*/
public static function getFormatJsonStrFromString(jsonStr:String):String
{
var formatStr:String = "";
for(var i:int=0,j:int=0,k:int=0,ii:int,ele:String; i<jsonStr.length; i++)
{//k:缩进,j:""个数
ele=jsonStr.charAt(i);
if(j%2==0&&ele=="}")
{
k--;
for(ii=0;ii<k;ii++) ele=" "+ele;
ele="\n"+ele;
}
else if(j%2==0&&ele=="{")
{
ele+="\n";
k++;
for(ii=0;ii<k;ii++) ele+=" ";
}
else if(j%2==0&&ele==",")
{
ele+="\n";
for(ii=0;ii<k;ii++) ele+=" ";
}
else if(ele=="\"")
{
j++;
}
formatStr+=ele;
}
return formatStr;
}
更简单的方法是:
var formatStr:String = JSON.stringify(JSON.parse(jsonStr), null, “\t”);