• xml运用1


    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.io.UnsupportedEncodingException;
    import java.util.ArrayList;
    import java.util.List;
    
    import org.dom4j.Document;
    import org.dom4j.DocumentException;
    import org.dom4j.DocumentHelper;
    import org.dom4j.Element;
    import org.dom4j.io.OutputFormat;
    import org.dom4j.io.SAXReader;
    import org.dom4j.io.XMLWriter;
    
    
    public class BookUtis {
    	
    	public List<Book> xmlToBook(InputStream is) throws Exception{
    		//封装了对xml的解析
    		SAXReader read=new SAXReader();
    		//做文件,解析器读取数据InputStream。从网络端收取数据或者从文件中读取数据
    		Document doc=read.read(is);
    		//根元素
    		Element root=doc.getRootElement();
    		List<Book> booklist=new ArrayList<Book>();
    		
    		
    		 List<Element> bookElements=root.elements("book");//这个文件万一下面有多个子元素的话,只拿其中book
    		 for(Element e:bookElements){
    			Book book=new Book();
    			//明确book下只有name单个元素
    			//                 book元素下获取name返回Element类型的list,只有一个元素取get(0)获取第一行,整体扩起来是一个单个元素,获取文本,tostring
    			
    			String name=((Element)(e.elements("name").get(0))).getData().toString();
    			
    			double price=Double.parseDouble(((Element)(e.elements("price").get(0))).getData().toString());
    			
    			book.setName(name);
    			book.setPrice(price);
    			booklist.add(book);
    		 }
    		
    		return booklist;
    	}
    	
    	public List<Book> xmlToBook(String xmlFileName) throws Exception{
    		InputStream is=new FileInputStream(xmlFileName);
    		List<Book> list=xmlToBook(is);
    		
    		
    		
    		
    		return list;
    	}
    
    	public void bookToXML(List<Book> booklist,OutputStream os) throws Exception{
    		
    		Document doc=DocumentHelper.createDocument();
    		Element root=doc.addElement("books");
    		for(Book book:booklist){
    			Element bookElement=root.addElement("book");
    			bookElement.addElement("name").setText(book.getName());
    			bookElement.addElement("price").setText(String.valueOf(book.getPrice()));
    			
    		}
    		
    		
    		XMLWriter write=new XMLWriter(os,OutputFormat.createCompactFormat());
    		
    		write.write(doc);
    		
    		write.close();
    	}
    }
    

      

  • 相关阅读:
    【SQLSERVER学习笔记】进攻式编程
    jQuery插件开发全解析
    淘宝前端框架kissyui
    JS获取MVC Attrbuate验证是否通用
    Asp.net MVC 自定义错误页面以及return HttpNotFound遇到的问题
    为类型“xxxx”多次调用了 Map,且其中至少有一个调用未指定目标表名称。
    Entity FreamWork 无法创建“System.Object”类型的常量值。此上下文仅支持基元类型或枚举类型错误解决
    Scala集合
    Scala面向对象
    scala函数
  • 原文地址:https://www.cnblogs.com/dss1025/p/8430710.html
Copyright © 2020-2023  润新知