2016-07-15 53 views
0

我有一个JSON字符串编码URL编码编码我的字符串两次

String strMappingList = [{"Id": "67","AccessType": "2"},{"Id": "1111","AccessType": "2"},{"Id": "1166","AccessType": "2"}] 

当我没有URL编码它编码strMappingList两次

try { 
    String str = URLEncoder.encode(strMappingList, "utf-8"); 
} catch (UnsupportedEncodingException e) { 
    e.printStackTrace(); 
} 
+0

上面的代码编码方法编码的字符串仅一次O/p为%5B%7B%27Id%27%3A +%2767%27%2C%27AccessType%27%3A +%272% 27%7D%2C%7B%27Id%27%3A +%271111%27%2C%27AccessType%27%3A +%272%27%7D%2C%7B%27Id%27%3A +%271166%27%2C%27AccessType% 27%3A +%272%27%7D%5D –

回答

1

试试你的字符串文件取码

如果你从服务器响应细不string.xml使用在string.xml

<string name="urls">[{"Id": "67","AccessType": "2"},{"Id": "1111","AccessType": "2"},{"Id": "1166","AccessType": "2"}]</string> 

代码

String strMappingList = getResources().getString(R.string.urls); 

try { 
    String str = URLEncoder.encode(strMappingList, "UTF-8"); 
    System.out.println("Strings"+str); 
} catch (UnsupportedEncodingException e) { 
    e.printStackTrace(); 
} 

使用直接

输出单时间

%5B%7BId%3A + 67%2CAccessType%3A + 2%7D%2C%7BId%3A + 1111%2CAccessType%3A + 2%7D%2C%7BId%3A + 1166%2CAccessType%3A + 2%7D%5D