jdom写xml

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public void BuildXML() {
  // 创建根节点
  Element root = new Element("errors");
  Document Doc = new Document(root);

  for (FileError fileError : errors) {
   Element elements = new Element("file");
   elements.setAttribute("name", fileError.getFileName());

   // 循环第二层节点
   for (String errorInfo : fileError.getErrors()) {
    elements.addContent(new Element("error").setText(errorInfo));
   }
   root.addContent(elements);
  }

  Format format = Format.getCompactFormat();
  format.setEncoding("GB2312");
  format.setIndent(" ");
  XMLOutputter XMLOut = new XMLOutputter(format);
  try {
   XMLOut.output(Doc, new FileOutputStream("D:\\logger.xml"));
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  }
 }

 

// 实体

public class FileError {
 private String fileName;

 private List<String> errors;

 public FileError(String fileName, List<String> errors) {
  this.fileName = fileName;
  this.errors = errors;
 }

 public List<String> getErrors() {
  return errors;
 }

 public void setErrors(List<String> errors) {
  this.errors = errors;
 }

 public String getFileName() {
  return fileName;
 }

 public void setFileName(String fileName) {
  this.fileName = fileName;
 }
}


// 生成的xml

<?xml version="1.0" encoding="GB2312"?>
<errors>
 <file name="test1.java">
  <error>line 176 应该是调试信息,不应该打印为Error信息</error>
 </file>
 <file name="test2.java">
  <error>line 489 应该是调试信息,不应该打印为Error信息</error>
  <error>line 521 应该是调试信息,不应该打印为Error信息</error>
 </file>
</errors> 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值