以下是对方返回数据格式
<?xml version="1.0" encoding="utf-8" ?>
<eps400>
<count size="abc" />
<data>
<record eps400="xxxxx" type="dfdfd" fl="333" occupytype="dddd" />
</data>
</eps400>解析代码如下:
// 构建HTTP请求
URL url = new URL(
"http://www.ccw.cn/lkszjreo/wqi4rpo/ewirwed/qncyrq/oijoijfkiejxml.aspx");
HttpURLConnection urlCon = (HttpURLConnection)url.openConnection();
InputStream is = urlCon.getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
String tmpStr = "";
while (rd.read() != -1) {
System.out.println(rd.readLine().toString());
//tmpStr += rd.readLine();
}
解析后的结果是: ?xml version="1.0" encoding="utf-8" ?>
eps400>
count size="abc" />
data>
record eps400="xxxxx" type="dfdfd" fl="333" occupytype="dddd" />
/data>
/eps400>请问这是什么原因引起的?
<?xml version="1.0" encoding="utf-8" ?>
<eps400>
<count size="abc" />
<data>
<record eps400="xxxxx" type="dfdfd" fl="333" occupytype="dddd" />
</data>
</eps400>解析代码如下:
// 构建HTTP请求
URL url = new URL(
"http://www.ccw.cn/lkszjreo/wqi4rpo/ewirwed/qncyrq/oijoijfkiejxml.aspx");
HttpURLConnection urlCon = (HttpURLConnection)url.openConnection();
InputStream is = urlCon.getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
String tmpStr = "";
while (rd.read() != -1) {
System.out.println(rd.readLine().toString());
//tmpStr += rd.readLine();
}
解析后的结果是: ?xml version="1.0" encoding="utf-8" ?>
eps400>
count size="abc" />
data>
record eps400="xxxxx" type="dfdfd" fl="333" occupytype="dddd" />
/data>
/eps400>请问这是什么原因引起的?
StingBuffer sb = new StringBuffer();
while((str=rd.readLine())!=null)
{
sb.append(str);
}
System.out.println(sb.toString())你的rd.read()每次已经读取了一个字符,所以“<”就没有了
StingBuffer sb = new StringBuffer();
while((str=rd.readLine())!=null)
{
sb.append(str);
}
System.out.println(sb.toString())你的rd.read()每次已经读取了一个字符,所以“<”就没有了
while (rd.read() != -1) {
替换成:
String str="";
StingBuffer sb = new StringBuffer();
[/while((str=rd.readLine())!=null)
{
sb.append(str);
}
System.out.println(sb.toString());
试试。