站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2EE 专题解析xml文件报错

解析xml文件报错

摘要: 解析xml文件报错


在解析xml文件的时候
如果<?xml version="1.0" encoding="utf-8"?>
不是第一行写的时候就会报错

要是第一行是一个空行
就是说<?xml version="1.0" encoding="utf-8"?>不是写在最前面的

要怎么解析这个xml
是用一个InputStream读过来的

谢谢!



路过,友情up...


用dom4j



DOM解析
SAX解析


解析用dom4j,jdom, SAX
都试过了
都不行的



<?xml version="1.0" encoding="utf-8"?>
这个是文件头啊?XML的定义里面这个就是要放在第一行的吧。。。


sax2


不写第一行是可以的!我这里有一个代码你看看吧!
/** 每一次拿第一个 */
String xml = (String) list.get(0);
/** 解析XML */
ByteArrayInputStream bytein = new ByteArrayInputStream(
xml.getBytes("utf-8"));
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory
.newDocumentBuilder();

Document doc = builder.parse(bytein);

/** 读取父结点 */
NodeList info0 = doc.getElementsByTagName("info");
Node info = info0.item(0);

/** 父结点的ID和Type和telphone */
String infoId = info.getAttributes().getNamedItem(
"id").getNodeValue();

String infoType = info.getAttributes()
.getNamedItem("type").getNodeValue();


最好还是按照标准的写法来写
可以避免很多问题
如果XML文件的行数不是很多的话用DOM解析就可以了
超过5000行就不要用那个了
DOM是很吃内存的


↑返回目录
前一篇: 菜鸟问题:
后一篇: HQL问题!急!!!!!