java 读取一个路径下的所有 xml类型的文件?
3个回答
展开全部
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
//import org.jdom2.Document;
import org.xml.sax.SAXException;
public class tt {
public static void main (String [] arg) {
DocumentBuilderFactory dFactory =DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = null;
try {
dBuilder = dFactory.newDocumentBuilder();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
org.w3c.dom.Document document = null;
try {
document = dBuilder.parse("E:/workspace/XMLTest/src/tt.xml");
} catch (SAXException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Element root= document.getDocumentElement();
NodeList nList = root.getChildNodes();
System.out.println(nList.getLength()+root.getNodeName());
//for(int i=0 ; i< nList.getLength() ; i++){
System.out.println(nList.item(1).getChildNodes().item(1).getTextContent()+ "hahah");
//}
NodeList nodeList =document.getElementsByTagName("StepDescription");
nodeList.item(0).getChildNodes().item(1).getAttributes().item(0).setNodeValue("ranqi");
System.out.println(nodeList.item(0).getChildNodes().item(1).getAttributes().item(0).getNodeValue()+ "7777");
DOMSource source = new DOMSource(document);
StreamResult sResult = new StreamResult(new File("E:/workspace/XMLTest/src/tt_11.xml"));
TransformerFactory tFactory =TransformerFactory.newInstance();
Transformer transformer =null;
try {
transformer =tFactory.newTransformer();
try {
transformer.transform(source, sResult);
} catch (TransformerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (TransformerConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
这还是我读E:/workspace/XMLTest/src/tt.xml这个路径下的xml文档
展开全部
实现思路就是先获取到xml文件的上层路径,之后获取到此路径下的所有文件,之后判断后缀为”.xml“的输出即可。
rivate List<String list = new ArrayList<String();
public static void main(String[] args) {
ReadFolder rf = new ReadFolder();
List<String list = rf.readFolder("src/com/test/file");/*** 读取文件夹下所有子目录下的文件,并将其保存到list集合中。
for(int i = 0; i < list.size(); i++){
if(list.get(i).endWith(".xml")) //判断后缀内容是xml的输出此内容
System.out.println(list.get(i));
}}
rivate List<String list = new ArrayList<String();
public static void main(String[] args) {
ReadFolder rf = new ReadFolder();
List<String list = rf.readFolder("src/com/test/file");/*** 读取文件夹下所有子目录下的文件,并将其保存到list集合中。
for(int i = 0; i < list.size(); i++){
if(list.get(i).endWith(".xml")) //判断后缀内容是xml的输出此内容
System.out.println(list.get(i));
}}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
得到所有的文件,然后再根据文件名来判断是不是以.xml结尾的,如果是就读取
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询