欢迎大家!
我正在开发一个Java应用程序,它从互联网调用一个PHP,该PHP给我一个XML响应。
在响应中包含这个词:“Próximo”,但是当我解析XML节点并将响应获取到一个字符串变量中时,我收到的单词是这样的:“Pr& oacute;ximo”。
我确定问题是我在Java应用程序中使用了不同的编码,然后使用了PHP脚本的编码。因此,我认为我必须将编码设置为与您的PHP xml相同,即UTF-8。
这是我用来从PHP获取XML文件的代码。 在这段代码中,我应该改变什么以将编码设置为UTF-8?(请注意,我没有使用缓冲读取器,而是使用输入流)
我正在开发一个Java应用程序,它从互联网调用一个PHP,该PHP给我一个XML响应。
在响应中包含这个词:“Próximo”,但是当我解析XML节点并将响应获取到一个字符串变量中时,我收到的单词是这样的:“Pr& oacute;ximo”。
我确定问题是我在Java应用程序中使用了不同的编码,然后使用了PHP脚本的编码。因此,我认为我必须将编码设置为与您的PHP xml相同,即UTF-8。
这是我用来从PHP获取XML文件的代码。 在这段代码中,我应该改变什么以将编码设置为UTF-8?(请注意,我没有使用缓冲读取器,而是使用输入流)
InputStream in = null;
String url = "http://www.myurl.com"
try {
URL formattedUrl = new URL(url);
URLConnection connection = formattedUrl.openConnection();
HttpURLConnection httpConnection = (HttpURLConnection) connection;
httpConnection.setAllowUserInteraction(false);
httpConnection.setInstanceFollowRedirects(true);
httpConnection.setRequestMethod("GET");
httpConnection.connect();
if (httpConnection.getResponseCode() == HttpURLConnection.HTTP_OK)
in = httpConnection.getInputStream();
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(in);
doc.getDocumentElement().normalize();
NodeList myNodes = doc.getElementsByTagName("myNode");