Bonjour
j'ai développé une ptite application qui permet de parser un fichier plist avec plist parser et ça en local
voila mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
 
 
public class PlistparserActivity extends Activity {
    /** Called when the activity is first created. */
    int i=0;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        TextView myXmlContent = (TextView)findViewById(R.id.my_xml);
        String stringXmlContent;
        try
        {
            stringXmlContent = getEventsFromAnXML(this);
            myXmlContent.setText(stringXmlContent);
        }
        catch (XmlPullParserException e)
        {
            e.printStackTrace();
        }
        catch (IOException e)
        {
 
            e.printStackTrace();
        }
    }
       private String getEventsFromAnXML(Activity activity)
    throws XmlPullParserException, IOException
    {
        StringBuffer stringBuffer = new StringBuffer();
        Resources res = activity.getResources();
        XmlResourceParser xpp = res.getXml(R.layout.myxml);
        xpp.next();
        int eventType = xpp.getEventType();
        int flag1 = 0, flag2 = 0, flag3 = 0;
        while (eventType != XmlPullParser.END_DOCUMENT)
        {
                   if(eventType == XmlPullParser.START_TAG)
            {
                   String mainTag = xpp.getName().toString();
                if(mainTag.equals("dict"))
                {
                    if(flag1==0)
                    {
                    flag1 = 1;
                    i=i+1;
                    stringBuffer.append("\n--MAIN DICTIONARY STARTS HERE---Number := "+i+"\n");
                    }
                    else
                    {
                        stringBuffer.append("\n\n------------INNER DICTIONARY STARTS HERE----------\n");
                        flag2 = 1;
                    }
 
                }
 
                else if(mainTag.equals("key"))
                {
                    flag3 = 1;
                }
 
                else
                {
                    flag3 = 2;
                }
            }
 
 
            else if(eventType == XmlPullParser.END_TAG)
            {
                String g = xpp.getName().toString();
 
                if(g.equals("dict"))
                {
                    if(flag1==1 && flag2!=1)
                    {
                                       stringBuffer.append("\n\n------------MAIN DICTIONARY ENDS HERE----------\n\n\n");
                    flag1=0;
                    }
                    else
                    {
                        stringBuffer.append("\n\n-----INNER DICTIONARY ENDS----------\n");
                        flag2=0;
                    }
                }
            }
            else if(eventType == XmlPullParser.TEXT)
            {
                if(flag3 == 1)
                {
                    stringBuffer.append("\nkey:="+xpp.getText());
                    flag3 = 0;
                }
                else if(flag3 == 2)
                {
                    stringBuffer.append("\nValue:="+xpp.getText());
                    flag3 = 0;
                }
            }
 
           eventType = xpp.next();
        }
        stringBuffer.append("\n--- End XML ---");
        stringBuffer.append("\n--- Total Number Of Dictionaries Are ---"+i);
 
        return stringBuffer.toString();
    }
}
ce que je veux,c'est d'accéder à un fichier liste sur internet et le parser
merci d'avance