在使用android解析XML时遇到一个异常,其异常信息是这样的:
org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 501: not well-formed (invalid token)
这个异常是在调用一个webService原来解析返回的XML字符串,结果遇到了上面的异常。下面是调用webService的核心代码:
try {
URL url = new URL(baseUrl);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setConnectTimeout(10000);
conn.setReadTimeout(8000);
InputStream inputStream = new BufferedInputStream(conn.getInputStream());
byte[] buffer = new byte[conn.getContentLength()];
inputStream.read(buffer, 0, buffer.length);
//InputStreamReader reader = new InputStreamReader(inputStream);
//int streamLength = conn.getContentLength();
//char[] buffer = new char[streamLength];
//reader.read(buffer, 0, streamLength);
String str = new String(buffer,0,buffer.length);
SendMsg("value",str);
Log.i("sjr",str);
} catch (Exception e) {
e.printStackTrace();
SendMsg("value","Network-error");
}
注释部分是我刚开始用的方法,可是解析这个返回的String的XML字符串时遇到了上面说的异常。后来改用红色部分的方式,没有再出现那个异常。
因为自己不是搞java的,半路出家,所以也不知道怎么回事儿。只是知道这样写就没有那个异常信息。
新闻热点
疑难解答