XMLSpy,Eclipse
先创建测试XML文件。将 id='一年级'改为id=“一班”
创建Test.java对XML文件中节点的属性值进行修改。主要功能代码如下:
运行Test.java程序,查看结果,可以看到XML中的内容改变了。
import java.io.FileOutputStream; import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.transform.OutputKeys;import javax.xml.transform.Transformer;import javax.xml.transform.TransformerFactory;import javax.xml.transform.dom.DOMSource;import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document;import org.w3c.dom.Element;import org.w3c.dom.NodeList; public class Test { public static void main(String[] args) { try { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document doc = db.parse('c:/test.xml'); NodeList list = doc.getElementsByTagName('Class'); for (int i = 0; i < list.getLength(); i++) { Element ele = (Element) list.item(i); String brandName = ele.getAttribute('id'); if (brandName.equals('一年级')) { ele.setAttribute('id', '一班'); } } TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource domSource = new DOMSource(doc); // 设置编码类型 transformer.setOutputProperty(OutputKeys.ENCODING, 'UTF-8'); StreamResult result = new StreamResult(new FileOutputStream( 'c:/test1.xml')); transformer.transform(domSource, result); } catch (Exception ex) { ex.printStackTrace(); } } } END