Wiz*_*bot 5 java encoding jersey
我正在使用jersey客户端向webservice发出请求.
Client client = ClientBuilder.newClient(new ClientConfig());
Invocation.Builder builder = client.target("http://someurl.com").request();
String result = builder.get(String.class);
Run Code Online (Sandbox Code Playgroud)
然后我得到了答复
<?xml version="1.0" encoding="ISO-8859-1" ?>
<DATA>some data with é è à characters</DATA>
Run Code Online (Sandbox Code Playgroud)
但在我的String结果中,响应看起来像那样
<?xml version="1.0" encoding="ISO-8859-1" ?>
<DATA>some data with ? ? ? characters</DATA>
Run Code Online (Sandbox Code Playgroud)
如何判断球衣是否正确解码了网络服务响应?
小智 1
我暂时找到了解决方法
Client client = ClientBuilder.newClient(new ClientConfig());
Invocation.Builder builder = client.target("http://someurl.com").request();
Response response = builder.get();
String result = CharStreams.toString(new InputStreamReader((InputStream) response.getEntity(), Charsets.ISO_8859_1));
Run Code Online (Sandbox Code Playgroud)
CharStreams
是一个 Guava 类,但还有其他方法可以将 an 转换为正确的InputStream
a 。String
Charset
归档时间: |
|
查看次数: |
2235 次 |
最近记录: |