如何从互联网加载XML文件到字符串
问题描述:
目前我有一个Java应用程序,它将XML从本地文件加载到字符串中。我的代码看起来像这样如何从互联网加载XML文件到字符串
private String xmlFile = "D:\\mylocalcomputer\\extract-2339393.xml";
String fileStr = FileUtils.readFileToString(new File(xmlFile));
我怎样才能得到XML文件的内容,如果它位于在互联网上,在像http://mydomain.com/xml/extract-2000.xml网址?
答
尝试萨克斯接口
private String xmlURL = "http://mydomain.com/xml/extract-2000.xml";
XMLReader reader = XMLReaderFactory.createXMLReader();
reader.setContentHandler(handler);
reader.parse(new InputSource(new URL(xmlURL).openStream()));
欲了解更多信息,关于SAX检查this link
答
检查这个代码:
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
InputStream inputStream = new FileInputStream(new File("http://mydomain.com/xml/extract-2000.xml"));
org.w3c.dom.Document doc = documentBuilderFactory.newDocumentBuilder().parse(inputStream);
StringWriter stw = new StringWriter();
Transformer serializer = TransformerFactory.newInstance().newTransformer();
serializer.transform(new DOMSource(doc), new StreamResult(stw));
stw.toString();
+0
+1用于变压器。我建议使用StreamSource而不是DOMSource来提高性能。 – 2012-01-16 12:31:23
嗨,我使用SAX,但不幸的是,我需要加载将XML转换为字符串并首先对其进行处理。 – 2012-01-16 17:09:38