如何使用java从xml文件中删除标记属性
我想用java从我的源xml文件中删除一些属性和标记,如果有人能帮助我,我将非常高兴。谢谢
XML文件
<?xml version="1.0" encoding="iso-8859-1"?>
<html>
<table cellspacing="0" cellpadding="3" align="Center" rules="cols" bordercolor="#999999" border="1" id="DataGrid1" bgcolor="White" height="8" width="624" style="Z-INDEX: 111; LEFT: 120px; POSITION: absolute; TOP: 128px">
<tbody>
<tr bgcolor="#000084">
<td><font color="White"><b>Date</b></font></td>
<td><font color="White"><b>Time</b></font></td>
<td><font color="White"><b>Quay</b></font></td>
<td><font color="White"><b>Vessel</b></font></td>
<td><font color="White"><b>Call Reference Number</b></font></td>
</tr>
<tr bgcolor="#EEEEEE">
<td><font color="Black">01.01.2014</font></td>
<td><font color="Black">11:00</font></td>
<td><font color="Black">P7</font></td>
<td><font color="Black">"SELFOSS"</font></td>
<td><font color="Black">NLRTM13029124 </font></td>
</tr>
<tr bgcolor="Gainsboro">
<td><font color="Black">01.01.2014</font></td>
<td><font color="Black">15:00</font></td>
<td><font color="Black">P6</font></td>
<td><font color="Black">"NEDLLOYD MARITA"</font></td>
<td><font color="Black">NLRTM13029408 </font></td>
</tr>
<tbody>
<table>
<html>
我想把这个xml改成
<?xml version="1.0" encoding="iso-8859-1"?>
<html>
<table>
<tbody>
<tr>
<td>Date</td>
<td>Time</td>
<td>Quay</td>
<td>Vessel</td>
<td>Call Reference Number</td>
</tr>
<tr>
<td>01.01.2014</td>
<td>11:00</td>
<td>P7</td>
<td>"SELFOSS"</td>
<td>NLRTM13029124</td>
</tr>
<tr>
<td>01.01.2014</font></td>
<td>15:00</font></td>
<td>P6</font></td>
<td>"NEDLLOYD MARITA"</td>
<td>NLRTM13029408</td>
</tr>
<tbody>
<table>
<html>
我必须用java完成。 如果有人能展示一些方法来实现这个目标,或者给出一些建议,那就太好了。非常感谢
# 1 楼答案
可以使用Java XML库(如Apache AXIOM)来操作XML。然而,由于某些标记没有正确关闭,所以您发布的文档不是有效的XML,这一点毫无意义
根据XML数据的来源,AXIOM可以通过多种方式构建DOM
有关更多信息,请参见公理Quick Start document。下面的代码段来自前面提到的快速入门文档,它从一个文件构造DOM:
一旦拥有了DOM,就可以使用XPath之类的工具来查找要操作的XML节点(本例中的属性),并将它们从DOM中删除
# 2 楼答案
试着用这个