2016-08-06 3 views
-1

На любом Response, у которого Content-Type может быть charset property, Как я могу разобрать значение?Как я могу проанализировать значение набора символов из ответа JAX-RS?

HTTP/1.1 200 OK 
Content-Type: plain/text; charset=<UNKNOWN> 

Когда клиенты должны проанализировать, как Reader, как они могут обнаружить значение charset?

Response response = request(); 
try (InputStream stream = response.readEntity(InputStream.class); 
    InputStreamReader reader = new InputStreamReader(stream, ????); 
    BufferedReader buffered = new BufferedReader(reader)) { 
} 

ответ

0

Любой может использовать MediaType#getParameters.

final MediaType mediaType = response.getMediaType(); 
// mediaType may be null 
final Map<String, String> parameters = mediaType.getParameters(); 
final String charset = parameters.get("charset"); 
// charset, again, may be null