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相关的解析方式

java怎么在xml文件中保存和读取字符串数组
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 St...

如何用java解析xml文档,然后将数据存到数据库里
package test11;import javax.xml.parsers.*;import org.w3c.dom.*;import java.io.*;public class XMLUtil { \/\/该方法用于从XML配置文件中提取具体类类名,并返回一个实例对象 public static Object getBean(){ try { \/\/创建文档对象 DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInst...

如何在一个xml文件里存一个整型数组
方法\/步骤 一、数组中的数据为具体的值:比如arrays.xml文件中的数组如下:<string-array name="select_dialog_items"> <item>Command one<\/item> <item>Command two<\/item> <item>Command three<\/item> <item>Command four<\/item> <\/string-array> ...

java 怎么读取文件中的字符和数据
String[] tempArr = {};\/\/临时缓存 保存用空格拆分该行记录得到的数组 String name="";\/\/临时缓存 保存姓名 String[] scoreTemp = {};\/\/临时缓存 保存分数串拆分后得到的数组 int totalScore = 0;\/\/临时缓存 总成绩 \/\/开始读文件 while((temp=bfR.readLine())!=null){ \/\/正则表达式拆分...

java怎么存储 长字符串,比如一篇文章
比较大的数据一般会存到令外的媒介。然后通过JAVA调用的方式来取得。常见的有:1流文件(文本文件,XML文件,PDF)2数据库存储

C# 将xml文件的内容读到一个字符串数组中,请大神帮忙 急!!
string xml = @"<Root> <Child attr1=""G:\\qw"" \/> <Child attr1=""G:\\新建文件夹"" \/> <Child attr1=""G:\\新建文件夹1"" \/><\/Root>"; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); var nodes=doc.SelectNodes("\/Root\/Child"); string[]...

vc 怎么把xml文件保存到sql中
我理解你是想问:如何把xml文件保存到SqlServer数据库中?一个xml对应一个数据库表。通常就是读取xml中元素(节点)的值并作为insert 的参数,然后执行insert语句就是咯(当然你也可以把xml文件读到DataSet中,然后将DataSet数据保存到数据,这样不必使用Insert了)。至于你要打印那就是读数据库数据并整理...

android中怎么解析复杂的xml文件
endElement(String uri, String localName, String name) 在遇到结束标签的时候,调用这个方法。characters(char[] ch, int start, int length) 这个方法用来处理在XML文件中读到的内容。例如:<high data="30"\/>主要目的是获取high标签中的值。第一个参数用于存放文件的内容,后面两个参数是读到的字符串在...

js读取XML字符串要去除<?xml version="1.0" encoding="UTF-8"?> 吗...
AJAX这个就不用去说怎么样操作了,下面这个函数只将返回字符串组成XML包的形式: \/\/装载字符串,将字符串组成XML的形式返回 Html代码 function loadXML(xmlString) ...{ var xmldoc; try ...{ xmldoc = new ActiveXObject("Microsoft.XMLDOM"); if(!xmldoc) xmldoc = new ActiveXO...

Java解析XML的几种方法
Document:XML文档对象,由解析器获取 NodeList:节点数组 Node:节点(包括element、#text)Element:元素,可用于获取属性参数 SAX(Simple API for XML)解析 【DefaultHandler类】SAX事件处理程序的默认基类,实现了DTDHandler、ErrorHandler、ContextHandler和EntityResolver接口,通常做法是,继承该基类,重写需要的...

相似回答