如何让URLEncoding不对冒号进行编码?

我有一个JSONObject:

{user:{"firstname":"testuser","surname":"æøå"}} 

所以我在对象中有这些特殊字符

我URLncode我有的jsonString。

 urlEncodedJsonReq = URLEncoder.encode("{user:{\"firstname\":\"testuser\",\"surname\":\"æøå\"}}","UTF-8"); 

我收到服务器的回复:“你提交的URI不允许使用字符。” 这是编码的url: serverurl/%7Buser%3A%7B%22firstname%22%3A%22testuser%22%2C%22surname%22%3A%22%C3%A6%C3%B8%C3%A5%22%7D%7D

但我需要的是:

 %7Buser:%7B%22firstname%22:%22testuser%22%2C%22surname%22:%22%C3%A6%C3%B8%C3%A5%22%7D%7D 

这有可能以任何合理的方式吗?

提前致谢

是的,或者干脆:

 URLEncoder.encode(theUrl).replace("%3A", ":");