java怎么在xml文件中保存和读取字符串数组

我使用jdom读写xml文件,想把一个字符串数组如:String week[] ={"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
保存到一个xml文件中,当需要时读出这个xml文件数据保存到一个字符串数组中该怎么处理?不用jdom用别的第三方jar也可以,请高手给一个例子,谢谢!

第1个回答  推荐于2017-10-11
package test;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.List;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;

public class XmlTest {
public String[] xml2Array(String fileName) throws JDOMException, IOException{
SAXBuilder b = new SAXBuilder();
Document xmlFile = b.build(new File(fileName));
Element root = xmlFile.getRootElement();
List ls = root.getChildren("week");
String weeks[]=new String[7];
for( int i = 0;i<ls.size();i++){
Element e = (Element)ls.get(i);
String week = e.getText();
weeks[i]=week;
}
return weeks;
}

public void array2Xml(String[] weekArray,String fileName) throws FileNotFoundException, IOException{
Element weeks = new Element("weeks");
Document doc = new Document(weeks);
for(int i=0;i<weekArray.length;i++){
Element week = new Element("week");
week.setText(weekArray[i]);
weeks.addContent(week);
}

XMLOutputter out = new XMLOutputter();
out.setFormat(out.getFormat().setEncoding("GBK"));
out.output(doc,new FileOutputStream( new File(fileName)));
}
/**
* @param args
* @throws IOException
* @throws JDOMException
*/
public static void main(String[] args) throws JDOMException, IOException {
XmlTest xml = new XmlTest();
String fileName = "week.xml";
String weeks[] ={"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
xml.array2Xml(weeks,fileName);
String testWeeks[] = xml.xml2Array(fileName);
for(String s:testWeeks){
System.out.println(s);
}
}
}本回答被提问者采纳
第2个回答  2012-04-07
你看看dom4j相关的解析方式
相似回答