java怎么获取远程带参数的xml文件?
类似地址:
http://192.168.1.100/test.jsp?cindex=2&pagesize=2如果没有带有参数的地址:像
http://192.168.1.100/test.xml就能获取。
类似地址:
http://192.168.1.100/test.jsp?cindex=2&pagesize=2如果没有带有参数的地址:像
http://192.168.1.100/test.xml就能获取。
String url = "http://board2.finance.daum.net/gaia/do/xml/finance/read?bbsId=stock&articleId=1673473&pageIndex=1&viewObj=1:2:0";
URLConnection uc = new URL(url).openConnection();
uc.setConnectTimeout(10000);
uc.setDoOutput(true);
InputStream in = new BufferedInputStream(uc.getInputStream());
Reader rd = new InputStreamReader(in,"UTF-8");
int c = 0;
while ((c = rd.read()) != -1) {
temp.append((char) c);
}
in.close();
strHtml = temp.toString();
strHtml 就是读取过来的xml
package com.commons;import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;import javax.xml.parsers.*;
import org.w3c.dom.Document;public class XmlClass { //解析一个来自所请求的URL的XML文档
public static Document getDocument(String urlString) {
try {
URL url = new URL( urlString );
try {
URLConnection URLconnection =url.openConnection ( ) ;
HttpURLConnection httpConnection =(HttpURLConnection)URLconnection;
int responseCode =httpConnection.getResponseCode ( ) ;
if ( responseCode == HttpURLConnection.HTTP_OK) {
InputStream in = httpConnection.getInputStream ( ) ;
try {
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
DocumentBuilder db=factory.newDocumentBuilder();
Document doc = db.parse(in);
return doc;
} catch(Exception e ) {
e.printStackTrace ( ) ;
}
} else {
System.out.println( "HTTP connection response !=HTTP_OK" );
}
} catch(IOException e) {
e.printStackTrace ( ) ;
}
} catch (MalformedURLException e ) {
e.printStackTrace ( ) ;
}
return null;
}}
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;public class roXML {
public static void main(String[] args) {
try {
String url = "http://board2.finance.daum.net/gaia/do/xml/finance/read?bbsId=stock&articleId=1673473&pageIndex=1&viewObj=1:2:0";
URLConnection uc = new URL(url).openConnection();
uc.setConnectTimeout(10000);
uc.setDoOutput(true);
InputStream in = new BufferedInputStream(uc.getInputStream());
Reader rd = new InputStreamReader(in,"UTF-8");
StringBuffer temp = new StringBuffer();
String strHtml = null;
int c = 0;
while ((c = rd.read()) != -1) {
temp.append((char) c);
}
in.close();
strHtml = temp.toString();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}====================
at java.net.SocketInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read1(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at com.xml.roXML.main(roXML.java:20)
at java.net.SocketInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read1(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTPHeader(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at sun.net.www.http.HttpClient.parseHTTP(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)