javascript中怎么对已经编码的字符串解码?

java中有一个字符串msg:<p><spanstyle="color:#ff57ac;"><strong>会读书胆红素</strong></span></p>,然后我用... java中有一个字符串 msg:<p><span style="color:#ff57ac;"><strong>会读书胆红素</strong></span></p>,然后我用URLEncoder.encode(msg, "utf-8")对其进行了编码,怎么才能在javscript中把他还原回来呢?

我用过一个decodeURIComponent方法,但是用这个方法解码后,原来msg中所有的空格都变成了+。
还有别的方法吗?
其实就是这个问题:
在java里:String str = URLEncoder.encode("游客说: desa", "utf-8");
System.out.println(str);
输出的是:%E6%B8%B8%E5%AE%A2%E8%AF%B4%EF%BC%9A+desa

而在javascript中:
var de = decodeURI("%E6%B8%B8%E5%AE%A2%E8%AF%B4%EF%BC%9A+desa");
alert(de);

弹出的是:游客说:+desa
并不能完全的转换回去,在有中文标点的时候就会有问题,怎么解决这个问题?
好像在有<,>,""的时候也有问题。
在服务器端用java编码,客户端js解码。。。
展开
 我来答
sjun0801
2009-08-06 · TA获得超过197个赞
知道答主
回答量:174
采纳率:0%
帮助的人:0
展开全部
如果你是用escape编码的,就用unescape()
如果你是用URLEncoder.encode()编码的,就用decodeURI() 解码。
hhiiuxx
2009-08-07 · TA获得超过174个赞
知道答主
回答量:152
采纳率:0%
帮助的人:94.6万
展开全部
javascript
用 var str = encodeURIComponent("游客说: desa") 编码
用 decodeURIComponent(str) 解码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友af663976a
2009-08-06 · 超过64用户采纳过TA的回答
知道答主
回答量:249
采纳率:0%
帮助的人:0
展开全部
javascript是escape和unescape方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
红尚杭玲
2019-03-01 · TA获得超过996个赞
知道小有建树答主
回答量:1856
采纳率:100%
帮助的人:8.8万
展开全部
可以使用原生的javascript代码来进行转义。该编码其实不是utf8,而是unicode编码。这里的字符实际上是html实体。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式