如何使用Java从URL读取/获取XML文件?
我想从URL中读取XML文件并对其进行解析。如何在Java中做到这一点???您可以使用它来支持这一点如何使用Java从URL读取/获取XML文件?,java,xml,xml-parsing,Java,Xml,Xml Parsing,我想从URL中读取XML文件并对其进行解析。如何在Java中做到这一点???您可以使用它来支持这一点 URL url = new URL("yoururl"); BufferedReader in = new BufferedReader( new InputStreamReader( url.openStream())); xSteamObj.fromXML(in);//return parsed object 您可以使用
URL url = new URL("yoururl");
BufferedReader in = new BufferedReader(
new InputStreamReader(
url.openStream()));
xSteamObj.fromXML(in);//return parsed object
您可以使用它来支持这一点
URL url = new URL("yoururl");
BufferedReader in = new BufferedReader(
new InputStreamReader(
url.openStream()));
xSteamObj.fromXML(in);//return parsed object
从URL读取与任何其他输入源都不同。有几种不同的Java工具用于XML解析 从URL读取与任何其他输入源不同。有几种不同的Java工具用于XML解析 两个步骤:
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.*;
StringBuilder responseBuilder = new StringBuilder();
try {
// Create a URLConnection object for a URL
URL url = new URL( "http://127.0.0.1" );
URLConnection conn = url.openConnection();
HttpURLConnection httpConn;
httpConn = (HttpURLConnection)conn;
BufferedReader rd = new BufferedReader(new InputStreamReader(httpConn.getInputStream()));
String line;
while ((line = rd.readLine()) != null)
{
responseBuilder.append(line + '\n');
}
}
catch(Exception e){
System.out.println(e);
}
SAXBuilder sb = new SAXBuilder();
Document d = null;
try{
d = sb.build( new StringReader( responseBuilder.toString() ) );
}catch(Exception e){
System.out.println(e);
}
当然,您可以剪切整个读取URL到字符串,然后在字符串上放置一个字符串读取器,但是我从两个不同的区域剪切/粘贴。所以这更简单。我使用JDOM:
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.*;
StringBuilder responseBuilder = new StringBuilder();
try {
// Create a URLConnection object for a URL
URL url = new URL( "http://127.0.0.1" );
URLConnection conn = url.openConnection();
HttpURLConnection httpConn;
httpConn = (HttpURLConnection)conn;
BufferedReader rd = new BufferedReader(new InputStreamReader(httpConn.getInputStream()));
String line;
while ((line = rd.readLine()) != null)
{
responseBuilder.append(line + '\n');
}
}
catch(Exception e){
System.out.println(e);
}
SAXBuilder sb = new SAXBuilder();
Document d = null;
try{
d = sb.build( new StringReader( responseBuilder.toString() ) );
}catch(Exception e){
System.out.println(e);
}
当然,您可以剪切整个读取URL到字符串,然后在字符串上放置一个字符串读取器,但是我从两个不同的区域剪切/粘贴。因此,这更容易。这是使用流式解析器的一个很好的候选者:
StAX被设计成串行处理XML流;与一次就需要整个文档模型的DOM API相比。StAX还假设内容是动态的,而XML的本质并不真正为人所知。StAX用例也包括处理管道 这是使用流式解析器的一个很好的候选者:
StAX被设计成串行处理XML流;与一次就需要整个文档模型的DOM API相比。StAX还假设内容是动态的,而XML的本质并不真正为人所知。StAX用例也包括处理管道 可能重复的可能重复的感谢。你能列出其中一些吗?这是一个很好的列表:。我在Xerces方面很成功,但我确实尝试了很多。谢谢。你能列出其中一些吗?这里是一个很好的列表:。我在Xerces方面取得了很好的成功,但我确实尝试了很多。所有XML绑定/序列化库都支持此用例。签出:@Blaise谢谢,@Srivigneshwar检查Blaise提供的链接很有帮助。什么是
xSteamObj
?所有XML绑定/序列化库都支持此用例。签出:@Blaise谢谢,@Srivigneshwar检查Blaise提供的链接很有帮助。什么是xSteamObj
?