public class ParseXML {
public static void main(String[] args) {
try {
DocumentBuilderFactory factory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
File file = new File("d:/table/AFFICHE.xml");
// 创建
Document document = builder.parse(file);
FileWriter fw = new FileWriter("d:/23.txt");
// 从数据库提取
// String xmlstr= "<beans><name>liu</name><pass>123</pass></beans>";
// builder.parse(new ByteArrayInputStream(str.getBytes()));
// save to mysql
// StringWriter output = new StringWriter();
// TransformerFactory.newInstance().newTransformer().transform(
// new DOMSource(document), new StreamResult(output));
//System.out.println(output.toString());
// 对内展现
XPathFactory factoryXpah = XPathFactory.newInstance();
XPath xpath = factoryXpah.newXPath();
XPathExpression expr = xpath.compile("//RECORD");
StringBuffer sql = new StringBuffer();
NodeList node = (NodeList)expr.evaluate(document,XPathConstants.NODESET);
for(int i=0;i<node.getLength();i++){
Node n = node.item(i);
NodeList ns = n.getChildNodes();
sql.append("insert into ");
sql.append(file.getName().substring(0,file.getName().lastIndexOf(".")));
sql.append(" values(");
for(int j =1;j<ns.getLength();j+=2){
sql.append("'");
String name = ns.item(j).getNodeName();
if(name.indexOf("DATE")==-1){
sql.append(ns.item(j).getTextContent().replaceAll("(//s+|//t+)", ""));
}else{
sql.append(ns.item(j).getTextContent().substring(0,ns.item(j).getTextContent().length()-7));
}
//sql.append(ns.item(j).getTextContent().replaceAll("(//s+|//t+)", ""));
if(j<(ns.getLength()+1)/2)
sql.append("',");
}
sql.append(")");
sql.append(";");
}
fw.write(sql.toString());
fw.close();
//System.out.println(expr.evaluate(document));
// 对jsp jstl xml
// 参考 http://www.java2s.com/Code/Java/JSP/XML.htm
} catch (Exception e) {
e.printStackTrace();
}
}
}
xml
最新推荐文章于 2025-08-10 10:28:56 发布