2016-11-13 79 views
-4

我創建的Android畫廊的應用程序,我開始開發Android最近 我試圖解析XML,但在互聯網中的所有例子並不適用於我Android:任何人都可以幫我解析XML嗎?

XML

誰能解析它爲我和發送代碼?

+1

,有照片的第一的JSONObject,它返回(照片)的JsonArray。在循環播放時,您將獲得標題和Nome的JSONObjects。希望能幫助到你。 –

+0

請顯示您的代碼。 –

+0

等等...開放工作室 –

回答

1

嘗試此,

public List<Foto> getFotos() { 
    ArrayList<Foto> array = new ArrayList<>(); 
    Foto foto = new Foto(); 

    try { 
     XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); 
     factory.setNamespaceAware(true); 
     XmlPullParser parser = factory.newPullParser(); 

     InputStream inputStream = getAssets().open("fotos.xml"); 
     parser.setInput(inputStream, null); 

     int eventType = parser.getEventType(); 
     String text = ""; 

     while (eventType != XmlPullParser.END_DOCUMENT) { 
      eventType = parser.next(); 
      String tagName = parser.getName(); 

      switch (eventType) { 
       case XmlPullParser.START_TAG: 
        if (tagName.equals("foto")) { 
         foto = new Foto(); 
        } 
        break; 
       case XmlPullParser.END_TAG: 
        if (tagName.equals("foto")) { 
         array.add(foto); 
        } else if (tagName.equals("title")) { 
         foto.setTitle(text); 
        } else if (tagName.equals("nome")) { 
         foto.setNome(text); 
        } 
        break; 
       case XmlPullParser.TEXT: 
        text = parser.getText(); 
        break; 
      } 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
    return array; 
} 

Foto.java

public class Foto { 
    String title; 
    String nome; 

    public Foto() { 
    } 

    public Foto(String title, String nome) { 
     this.title = title; 
     this.nome = nome; 
    } 

    public String getTitle() { 
     return title; 
    } 

    public void setTitle(String title) { 
     this.title = title; 
    } 

    public String getNome() { 
     return nome; 
    } 

    public void setNome(String nome) { 
     this.nome = nome; 
    } 
} 
在該XML
+0

非常感謝你,工作! –

相關問題