2016-07-15 8 views
0

JSON 문자열 내가 URL이 strMappingList 인코딩 인코딩 않은 경우URL 인코딩 내 문자열 두 번 내가 가진

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

를 인코딩하는 인코딩 두 번

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

위의 코드 인코딩 방법은 문자열을 한 번만 인코딩합니다. % 5B % 7B % 27 % 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 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(); 
} 

에 직접

사용 string.xml에서 사용하지 서버에서 응답을받을 경우 출력 단일 시간

% 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