Java 使用http读取xml文件

Java 使用http读取xml文件,java,xml,Java,Xml,有人知道通过http快速读取xml文件的方法吗? (例如,我的文件位于)。如何从java应用程序读取此文件 非常感谢您的帮助 谢谢 Damien使用java.net.URL获取InputStream: final URL url = new URL("http://www.abc.com/file.xml"); final InputStream in = new BufferedInputStream(url.openStream()); // Read the input stream as

有人知道通过http快速读取xml文件的方法吗? (例如,我的文件位于)。如何从java应用程序读取此文件

非常感谢您的帮助

谢谢
Damien

使用
java.net.URL
获取
InputStream

final URL url = new URL("http://www.abc.com/file.xml");
final InputStream in = new BufferedInputStream(url.openStream());
// Read the input stream as usual

为简洁起见,异常处理和内容被省略。

Dave Ray的回答确实快速而简单,但它不能很好地用于HTTP重定向,或者如果您必须通过需要身份验证的代理服务器。不幸的是,标准JavaAPI的类(在Java.net中)缺少一些功能,或者在这种情况下很难使用

开源库可以自动处理重定向,并使需要身份验证的代理服务器易于使用

以下是一个基本示例:

HttpClient client = new HttpClient();
GetMethod method = new GetMethod("http://www.abc.com/file.xml");

int statusCode = client.executeMethod(method);
if (statusCode != HttpStatus.SC_OK) {
    System.err.println("Method failed: " + method.getStatusLine());
}

byte[] responseBody = method.getResponseBody();

如果您计划使用W3C DOM,但对任何IO或HTTP细节都不感兴趣,则可以执行以下操作:

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;

...

final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
final DocumentBuilder builder = factory.newDocumentBuilder();
final Document document = builder.parse("http://www.abc.com/file.xml");

谢谢杰斯珀。存放xml的服务器由我控制,因此我不必担心重定向。谢谢你的有效意见,非常感谢