java获取xml数据。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java获取xml数据。相关的知识,希望对你有一定的参考价值。
DocumentBuilderFactory domfac = DocumentBuilderFactory.newInstance();
OutputStream os = null;
InputStream is = null;
Document doc = null;
if (url != null && xmlString != null && url.trim().length() != 0)
try
URL urlp = new URL(url);
URLConnection con_ = urlp.openConnection();
HttpURLConnection conn = null;
if (con_ instanceof HttpURLConnection)
conn = (HttpURLConnection) con_;
conn.setRequestMethod("POST");
conn.setDoOutput(true);
os = conn.getOutputStream();
os.write(("xml="+URLEncoder.encode(xmlString,"UTF-8")).getBytes());
conn.connect();
if (conn.getResponseCode() == 200)
is = conn.getInputStream();
else
is = conn.getErrorStream();
domfac.setValidating(false);
DocumentBuilder dombuilder = domfac.newDocumentBuilder();
doc = dombuilder.parse(is);
到doc = dombuilder.parse(is);会返回错误:
org.xml.sax.SAXParseException: An invalid XML character (Unicode: 0x0) was found in the CDATA section. 无论setValidating(false);或者true 均报这个错误。那位大大给看看啊。。
你的xml文件格式有问题吧?! 参考技术A 是不是文件的注释中加了什么非汉字的文字,它的报错是一个无效的XML字符啊。。。。 参考技术B 这个和字符编码有关,你试下另存为其他编码。不行,再试下,删除第一行的空格什么的,不能有空格的。
java获取XML指定节点的全部子节点
如有XML文件
<?xml version="1.0" encoding="UTF-8"?>
<aa>
<bb>
<cc patch="aaaaaaaaa" />
<cc patch="cccccccc" />
</bb>
<bb>
<cc patch="bbbbbbbb" />
</bb>
</aa>
//下面是部分java代码
File file = new File("test.xml");
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(file);
Element element=document.getDocumentElement();
NodeList nodeList =document.getElementsByTagName("bb");
//遍历每一个bb节点
for (int i = 0; i < nodeList.getLength(); i++)
//这里如何获取bb节点下的所有节点
我试了nodeList.item(i).getChildNodes(),获取的也不是子节点啊
请问如和获取每一个bb节点下包含的cc节点
http://user.qzone.qq.com/277931993/blog/1311730883
参考资料:http://user.qzone.qq.com/277931993/blog/1311730883
本回答被提问者采纳以上是关于java获取xml数据。的主要内容,如果未能解决你的问题,请参考以下文章