java 如何远程读取xml文件.

发布于 2021-11-10 16:25:12 字数 1203 浏览 853 评论 4

import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;


public class XMLTest {
	//filename D:\SWTdemo\eg.xml
	private Map<String, String> readXml(String filename) {
		File file = new File(filename);
		SAXReader reader = new SAXReader();
		Map<String, String> map = new HashMap<String, String>();
		try {
			Document doc = reader.read(file);
			Element root = doc.getRootElement();
			List<Element> listmsg = root.elements();
			if(listmsg.size()==0)
				return null;
			for (Element element : listmsg) {
				map.put(element.getName(), element.getText());
			}
		} catch (DocumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return map;
	}
	public static void main(String[] args) {
		XMLTest xml = new XMLTest();
		Map<String, String> map = xml.readXml("http://127.0.0.1:8983/sparkweb/eg.xml");
		System.out.println("服务器:"+map.get("server"));
	}
}

这个是我的代码.如果传入本地的文件就是正确的.如果我传入一个URL路径的话就会报找不到这个文件.同样的xml文件放的位置不一样.我想问问如果要这样做怎么办.(提示我只能用那样的只能用绝对路径.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

旧伤慢歌 2021-11-10 16:25:40

问题我以找到解决的方法.说出来有点丢人.dom4j.有提供一个可以读取远程xml的方法.
方法是read的重载里面.可以传如一个URL路径.上面的File就不需要了.

温柔少女心 2021-11-10 16:25:15

读取网络上的资源不能这样用File,试试http://www.oschina.net/p/httpclient

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文