java无法替换json中的换行,JSON.parse的问题!含有换行符和空格是不能转换的

protected string toJSonString(string s)

{

StringBuilder sb = new StringBuilder();

for (int i = 0; i < s.Length; i++)

{

char c = s[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;

case '=':

sb.Append("=");

break;

case '&':

sb.Append("&");

break;

case '?':

sb.Append("?");

break;

case '%':

sb.Append("%");

break;

default:

if ((c >= 0 && c <= 31) || c == 127)//在ASCⅡ码中,第0~31号及第127号(共33个)是控制字符或通讯专用字符

{

}

else

{

sb.Append(c);

}

break;

}

}

//return Server.UrlEncode(str);

//return Server.UrlPathEncode(Server.UrlPathEncode(str));

//return HttpUtility.UrlPathEncode(sb.ToString());

return sb.ToString();

}

不仅仅空格和换行要转,这几个都需要转, 转全角字符的那几个是因为小程序页面间传参数需要转。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值