XML 字符串(节点层级不固定):<diffgr:diffgram xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1"
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<Region xmlns="">
<City diffgr:id="City1" msdata:rowOrder="0">
<CityID>832</CityID>
<CityName>安国</CityName>
<CityName>test</CityName>
</City>
<City diffgr:id="City2" msdata:rowOrder="1">
<CityID>837</CityID>
<CityName>安平</CityName>
</City>
</Region>
</diffgr:diffgram>
要拼成 html 类似,格式如下:<div>
<p>调用返回结果</p>
<ul class='tree'>
<li><a>diffgram[]</a>
<ul>
<li><a>Region[]</a>
<ul>
<li><a>City[]</a>
<ul>
<li><a>CityID[832]</a>
</li>
<li><a>CityName[安国]</a>
</li>
<li><a>CityName[深州]</a>
</li>
</ul>
</li>
<li><a>City[]</a>
<ul>
<li><a>CityID[837]</a>
</li>
<li><a>CityName[安平]</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
XML 字符串的节点层级不固定;
哪位帮忙弄个方法拼一下 ,
xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<Region xmlns="">
<City diffgr:id="City1" msdata:rowOrder="0">
<CityID>832</CityID>
<CityName>安国</CityName>
<CityName>test</CityName>
</City>
<City diffgr:id="City2" msdata:rowOrder="1">
<CityID>837</CityID>
<CityName>安平</CityName>
</City>
</Region>
</diffgr:diffgram>
要拼成 html 类似,格式如下:<div>
<p>调用返回结果</p>
<ul class='tree'>
<li><a>diffgram[]</a>
<ul>
<li><a>Region[]</a>
<ul>
<li><a>City[]</a>
<ul>
<li><a>CityID[832]</a>
</li>
<li><a>CityName[安国]</a>
</li>
<li><a>CityName[深州]</a>
</li>
</ul>
</li>
<li><a>City[]</a>
<ul>
<li><a>CityID[837]</a>
</li>
<li><a>CityName[安平]</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
XML 字符串的节点层级不固定;
哪位帮忙弄个方法拼一下 ,
解决方案 »
- jre1.4版本 applet怎样与js交互???加急啊
- 这是怎么回事呢,跪求解决,不管你是新手还是大神都来看看吧
- 文件上传代码无误 运行OK可就是不见上传的文件
- DispatchAction 转向问题
- 请教一个structs的问题!
- servler中不能读取text类型的数据
- 本人欲做基于P2P技术的课题??请问有什么比较好的题目吗在这方面??急!!!!????
- 想使用<html:link >标签进行表单提交,并传递一个或多个参数到Action中,请问如何做呢
- [江湖救急]:jboss的启动问题,请高手提点迷津!万分感谢
- ms sqlserver的jdbc驱动程序的安装问题
- 如何通过服务端读取解析json
- dwr 下拉列表 对象
Region[]
City[]
这些是什么?固定写法?这些不需要变?
<ul>
<li><a>CityID[832]</a>
</li>
<li><a>CityName[安国]</a>
</li>
<li><a>CityName[深州]</a>
</li>
</ul>
只需要在这里面拼接就可以了吗?
SAXReader ..
在通过transformer去转换public class testXslt {
public static void main(String[] args)
throws TransformerException, TransformerConfigurationException,
FileNotFoundException, IOException
{
// Use the static TransformerFactory.newInstance() method to instantiate
// a TransformerFactory. The javax.xml.transform.TransformerFactory
// system property setting determines the actual class to instantiate --
// org.apache.xalan.transformer.TransformerImpl.
TransformerFactory tFactory = TransformerFactory.newInstance();
// Use the TransformerFactory to instantiate a Transformer that will work with
// the stylesheet you specify. This method call also processes the stylesheet
// into a compiled Templates object.
Transformer transformer = tFactory.newTransformer(new StreamSource("C:\\xml2xml\\样式.xsl"));
// Use the Transformer to apply the associated Templates object to an XML document
// (foo.xml) and write the output to a file (foo.out).
transformer.transform(new StreamSource("C:\\xml2xml\\源.xml"), new StreamResult(new FileOutputStream("C:\\xml2xml\\转换后.xml")));
System.out.println("************* The result is in birds.out *************");
}
}
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE booklist SYSTEM "book.dtd">
------------book.xml
<booklist>
<book isbn="1001" lang="cn">
<书名 catalog="玄幻">
<![CDATA[<<兽血沸腾>>]]>
</书名>
<作者>静官</作者>
<作者>官静</作者>
<联系方式>
<手机>13568545872</手机>
<邮箱>[email protected]</邮箱>
</联系方式>
<价格>50</价格>
<简介>好书</简介>
</book>
<br></br>
<book isbn="1002" lang="cn">
<书名 catalog="玄幻">
<![CDATA[<<明日骄阳>>]]>
</书名>
<作者>静官</作者>
<联系方式>
<手机>13568545872</手机>
<邮箱>[email protected]</邮箱>
</联系方式>
<价格>500</价格>
<简介>好书</简介>
</book>
<br></br>
</booklist>
package day01;import java.io.File;
import java.util.Iterator;
import java.util.List;import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;public class ReadBookDemo {//读xml /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
readBook("src/day01/book.xml"); } public static void readBook(String filename) {
// TODO Auto-generated method stub
SAXReader reader=new SAXReader();
File file=new File(filename);
try {
Document doc=reader.read(file);//解析指定的文件
Element rootElmt=doc.getRootElement();
List books=rootElmt.elements("book");
parseBook(books);
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} public static void parseBook(List books) {
// TODO Auto-generated method stub
Iterator ite=books.iterator();
while(ite.hasNext()){
Element bookElmt=(Element) ite.next();
Element bookNameElmt=bookElmt.element("书名");
String bookname=bookNameElmt.getText();
String brief=bookElmt.elementText("简介");
System.out.println(bookname+" "+brief);
List<Element> authorList=bookElmt.elements("作者");
for(Element author:authorList){
System.out.println(author.getText());
}
List attributesList=bookElmt.attributes();//book attributes
Iterator ite1=attributesList.iterator();
while(ite1.hasNext()){
Attribute attr=(Attribute) ite1.next();
String key=attr.getName();
String value=attr.getText();
System.out.println(key+"="+value);
}
List attributesList1=bookNameElmt.attributes();//书名 attributes
Iterator ite2=attributesList1 .iterator();
while(ite2.hasNext()){
Attribute attr1=(Attribute) ite2.next();
String key=attr1.getName();
String value=attr1.getText();
System.out.println(key+"="+value);
}
}
}}
package day02;import java.io.FileWriter;
import java.io.IOException;import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import org.xml.sax.DocumentHandler;public class BuildBookDemo {//将数据加载到xml/html /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String[][] data={
{"1001","wuxia","tianlongbabu1","50","jinyong","1968","cn"},
{"1002","wuxia","tianlongbabu2","50","jinyong","1968","cn"},
{"1003","xuanhuan","tianlongbabu3","50","jinyong","1968","cn"},
{"1004","wuxia","tianlongbabu4","50","jinyong","1968","cn"}
};
buildBook(data,"mybook.xml"); }
public static void buildBook(String[][] data,String filename){
Document doc=DocumentHelper.createDocument();
Element rootElmt=doc.addElement("booklist");
for(String[] book:data){
Element bookElmt=rootElmt.addElement("book");
Element title=bookElmt.addElement("title");
title.setText(book[2]);
Element prise=bookElmt.addElement("price");
prise.setText(book[3]);
Element author=bookElmt.addElement("author");
author.setText(book[4]);
Element year=bookElmt.addElement("year");
year.setText(book[5]);
bookElmt.addAttribute("isbn",book[0]);
bookElmt.addAttribute("catalog",book[1]);
title.addAttribute("lang", book[6]);
}
outputXml(doc,filename);
}
private static void outputXml(Document doc, String filename) {
// TODO Auto-generated method stub
try {
FileWriter fw=new FileWriter(filename);
OutputFormat format=OutputFormat.createPrettyPrint();
format.setEncoding("utf-8");
XMLWriter xw=new XMLWriter(fw,format);
xw.write(doc);
xw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Element child = new Element(Tag.valueOf("div"), "");
document.appendChild(child);
System.out.println(document);