XML解析器无法正常工作,我收到以下错误:
org.xml.sax.SAXParseException; lineNumber:1; columnNumber:1;序言中不能有内容 . at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:257)at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:339)在openexcel.xmlreader.main(xmlreader.java:24)
这是我的XML文档
</service>
</services>
<solutions>
<solution>
<cost>505.9214670746815</cost>
<routes>
<route>
<driverId>noDriver</driverId>
<vehicleId>1_1</vehicleId>
<start>0.0</start>
<act type="service">
<serviceId>5 WassimKarim maudarbaccus</serviceId>
<arrTime>109.9819741964403</arrTime>
<endTime>119.9819741964403</endTime>
</act>
<end>229.9639483928806</end>
</route>
<route>
<driverId>noDriver</driverId>
<vehicleId>3_1</vehicleId>
<start>0.0</start>
<act type="service">
<serviceId>4 Jean Nicolas Yung</serviceId>
<arrTime>109.98190391287031</arrTime>
<endTime>119.98190391287031</endTime>
</act>
<act type="service">
<serviceId>2 George Bush</serviceId>
<arrTime>119.98282618841856</arrTime>
<endTime>129.98282618841856</endTime>
</act>
<act type="service">
<serviceId>3 Saddam Usain</serviceId>
<arrTime>129.98343325287408</arrTime>
<endTime>139.98343325287408</endTime>
</act>
<act type="service">
<serviceId>1 Barack OBama</serviceId>
<arrTime>139.98435552842233</arrTime>
<endTime>149.98435552842233</endTime>
</act>
<end>259.9673220629237</end>
</route>
</routes>
</solution>
<solution>
<cost>505.9208295302417</cost>
<routes>
<route>
<driverId>noDriver</driverId>
<vehicleId>1_2</vehicleId>
<start>0.0</start>
<act type="service">
<serviceId>5 Oppa Gamnamstyle</serviceId>
<arrTime>109.9819741964403</arrTime>
<endTime>119.9819741964403</endTime>
</act>
<end>229.9639483928806</end>
</route>
<route>
<driverId>noDriver</driverId>
<vehicleId>3_1</vehicleId>
<start>0.0</start>
<act type="service">
<serviceId>4 Jean Nicolas Yung</serviceId>
<arrTime>109.98190391287031</arrTime>
<endTime>119.98190391287031</endTime>
</act>
<act type="service">
<serviceId>2 Emilie Sparks</serviceId>
<arrTime>119.98282618841856</arrTime>
<endTime>129.98282618841856</endTime>
</act>
<act type="service">
<serviceId>1 Denzel Wshington</serviceId>
<arrTime>129.98372097890456</arrTime>
<endTime>139.98372097890456</endTime>
</act>
<act type="service">
<serviceId>3 Mona Lisa</serviceId>
<arrTime>139.9846432544528</arrTime>
<endTime>149.9846432544528</endTime>
</act>
<end>259.9668316441239</end>
</route>
</routes>
</solution>
</solutions>
</problem>
我正在尝试为XML文件中的每个实体获取几个字段(cost,driverid,vehicleid,start,act,serviceId,arrTime) .
到目前为止我一直在尝试的是
1 回答
The Exception
您得到的错误是由于您的XML格式不正确,XML的开头似乎不正确,您可以删除
并替换它
这样您的XML就会以这种方式启动:
这将匹配文件的结束标记
我试了一下,现在可以解析了 .
Extracting values
获得有效的XML后,如上所述 .
假设我们有以下课程
您需要创建一个处理程序,在读取xml时构建对象
然后,您可以通过以下方式简单地解析XML:
并且您将所有文件解析为处理程序中的解决方案列表,您可以通过这种方式获得它