PhotoHandler.java
上传用户:vip_99
上传日期:2021-03-27
资源大小:61159k
文件大小:2k
源码类别:

android开发

开发平台:

Java

  1. package irdc.ex09_08; 
  2. /* import相关class */
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import org.xml.sax.Attributes; 
  6. import org.xml.sax.SAXException; 
  7. import org.xml.sax.helpers.DefaultHandler; 
  8. public class PhotoHandler extends DefaultHandler
  9. {
  10.   private int thumbnailNum=0;
  11.   private List<String> list1;
  12.   private List<String> list2;
  13.   
  14.   /* 返回分辨率72的相片信息 */
  15.   public List<String> getSmallPhoto()
  16.   { 
  17.     return list1;
  18.   }
  19.   /* 返回分辨率288的相片信息 */
  20.   public List<String> getBigPhoto()
  21.   { 
  22.     return list2;
  23.   }
  24.   /* XML文件开始解析时调用此method */
  25.   @Override 
  26.   public void startDocument() throws SAXException
  27.   { 
  28.     list1 = new ArrayList<String>();
  29.     list2 = new ArrayList<String>();
  30.   } 
  31.   /* XML文件结束解析时调用此method */
  32.   @Override 
  33.   public void endDocument() throws SAXException
  34.   {
  35.   }
  36.   /* 解析到Element的开头时调用此method */
  37.   @Override 
  38.   public void startElement(String namespaceURI, String localName, 
  39.                String qName, Attributes atts) throws SAXException
  40.   { 
  41.     if (localName.equals("thumbnail"))
  42.     { 
  43.       if(thumbnailNum==0)
  44.       {
  45.         /* 将第一笔url(分辨率72的相片连接)写入list1 */
  46.         list1.add(atts.getValue("url"));
  47.       }
  48.       else if(thumbnailNum==2)
  49.       {
  50.         /* 将第三笔url(分辨率288的相片连接)写入list2 */
  51.         list2.add(atts.getValue("url"));
  52.       }
  53.       thumbnailNum++;
  54.     }
  55.   }
  56.   /* 解析到Element的结尾时调用此method */
  57.   @Override 
  58.   public void endElement(String namespaceURI, String localName,
  59.                          String qName) throws SAXException
  60.   { 
  61.     if (localName.equals("group"))
  62.     { 
  63.       /* 解析到group的结尾时将thumbnailNum重设为0 */
  64.       thumbnailNum=0;
  65.     }
  66.   } 
  67. }