🍜Java之XML
- XML小案例练习,对xml文件的修改
public class Xml02 {
public static void main(String[] args) throws IOException {
String path="D:\\Java\\Project\\Study\\src\\com\\week05\\day02\\Demo01.xml";
creat(creatDocument(),path);//创建xml文件
creat(change(creatDocument()),path);//修改xml文件
}
//修改文件
public static Document change(Document doc){
Element element=doc.getRootElement();//获取根标签
//删除标签fu
Element fu=element.element("Fu");
element.remove(fu);
//修改子标签的内容和属性
List<Element> ls=element.elements();//获取跟标签下的全部子标签
//遍历
ls.forEach(ele->{
if("Fuyang".equals(ele.getName())){
System.out.println("Fuyang".equals(ele.getName()));
Element element1=ele.element("People");
System.out.println(element1.getText());
element1.setText(String.valueOf(Integer.parseInt(element1.getText())+2000));//修改内容
System.out.println(element1.getText());
element1.addAttribute("id","1001");
}
});
return doc;
}
//输出并生成文本
public static void creat(Document sd,String path) throws IOException {
//设置格式
OutputFormat format=OutputFormat.createPrettyPrint();//输出格式
//写入
XMLWriter writer=new XMLWriter(new FileWriter(path),format);
writer.write(sd);
//刷新
writer.flush();
writer.close();
}
//创建文本
public static Document creatDocument(){
Document doc= DocumentHelper.createDocument();//创建文本对象
Element ch=doc.addElement("Chinese");
//子元素
Element he=ch.addElement("Hefei");
he.addElement("People").addText("10000");
he.addElement("Shop").addText("SupperMap");
Element fu=ch.addElement("Fuyang");
fu.addElement("People").addText("10000");
fu.addElement("Shop").addText("SupperMap");
return doc;
}
}
结果