나는 다음과 같은 문자열 리소스가 있습니다안드로이드 및 String.format 던지기 (자), UnknownFormatConversionException
<string formatted="false" name="residential_search_url">https://api.trademe.co.nz/v1/Search/Property/Residential.json?latitude_min=%f%26latitude_max=%f%26longitude_min=%f%26longitude_max=%f</string>
이하여 활동에 사용되는 :
String residentialUrl = task.getSearchUrl(_map.getProjection().getVisibleRegion().latLngBounds,getString(R.string.residential_search_url));
그리고 그 방법은 다음과 같이 정의된다
public String getSearchUrl(LatLngBounds bounds, String baseUrl){
return String.format(baseUrl,
bounds.southwest.latitude,
bounds.northeast.latitude,
bounds.southwest.longitude,
bounds.northeast.longitude);
}
을
계속 받고 있습니다.
java.util.UnknownFormatConversionException: Conversion = l''
%f
대신 %s
을 사용해 보았지만 아무런 차이가 없었습니다.
쿼리 문자열에서 앰퍼샌드를 이스케이프 처리해야합니다. 어떻게해야합니까? 26 %라고 생각했지만 분명히 그렇지 않습니까? – codedog
내가 잘못 알아 냈어. 그것은 '&'로 이스케이프되었다. 이제는 정상적으로 작동합니다. – codedog
% 26은 대부분의 상황에서 작동합니다. 문자열을 형식 지정자로 % 문자를 해석하는 것에 대한 입력으로 사용할 때가 아닙니다. 당신이 문제를 피한 것 같네요. – user3109924