java生成XML文件java
經過java生成XML文件,在不少場合都會用到。好比:作android應用的時候,有不少數據,都是經過服務端生成的XML文件,再解析XML文件裏的數據。android
下面是經過JAVA生成XML文件的代碼:數組
import java.util.ArrayList;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.XMLOutputter;
/**
* 生成XML文件
***/
public class XmlUtils {
/**
* 根據List列表封裝成XML數據
* @return 返回封裝後的數據
*/
public static String getXmlFromList(List<User> beanList) {
String result = "";
Element root = new Element("user-list");
Document doc = new Document(root);
for (User user : beanList) {
Element element = new Element("user");
element.addContent(new Element("userId").setText(String.valueOf(user.getUserId())));
element.addContent(new Element("userName").setText(user.getUserName()));
element.addContent(new Element("email").setText(user.getEmail()));
root.addContent(element);
}
XMLOutputter XMLOut = new XMLOutputter();
try {
/**
* 輸出XML數據
*/
result = XMLOut.outputString(doc);
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
public static void main(String[] args) {
User u1 = new User(1,"張三","");
User u2 = new User(2,"李四","");
User u3 = new User(3,"王五","");
List<User> userList = new ArrayList<User>();
userList.add(u1);
userList.add(u2);
userList.add(u3);
/**
* 根據List數組,生成XML數據
*/
String resultXml = getXmlFromList(userList);
/**
* 打印生成的XML數據
*/
System.out.println(resultXml);
}
} dom
POJO類:this
public class User {
private int userId;
private String userName;
private String email;
public User(int userId, String userName, String email) {
super();
this.userId = userId;
this.userName = userName;
this.email = email;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
} xml
生成後的XML文件以下:
<?xml version="1.0" encoding="UTF-8"?>
<user-list>
<user>
<userId>1</userId>
<userName>張三</userName>
<email>user1@xxx.com</email>
</user>
<user>
<userId>2</userId>
<userName>李四</userName>
<email>user2@xxx.com</email>
</user>
<user>
<userId>3</userId>
<userName>王五</userName>
<email>user3@xxx.com</email>
</user>
</user-list> element
備註:其中會用到jdom.jar包。get