在下面的代码中:
HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
connection.setRequestProperty("charset", "utf-8");
InputStream input = connection.getInputStream();
InputStreamReader reader = new InputStreamReader(input, "utf-8");
BufferedReader buffer = new BufferedReader(reader);
...
由于InputStreamReader
UTF-8
,setRequestProperty
由HttpsURLConnection
构成。但是,我认为代码确实需要从响应中获取CharSet
。但这似乎是一个鸡与蛋的问题。
是否可以检索其响应中实际使用的CharSet
服务器(而不是将其设置为我希望的那样)?
答案 0 :(得分:0)
通常,您可以做的最好的事情是设置Accept-Charset
请求标头以指示客户端接受的字符编码。例如,
Accept-Charset: UTF-8
如果HTTP服务器配置正确,则响应将为UTF-8。响应Content-Type
应包含响应的字符编码。