gpt4 book ai didi

android - xml解析中如何解析属性中的值

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:53:46 27 4
gpt4 key购买 nike

你好,我有这样的网络服务

<audio title="Terry Waychuk Pure2010" audio="http://www.boodang.com/api/audio/**Terry_Waychuk**/Terry_Waychuk_Pure2010.mp3" description="Terry Waychuk Pure2010" createddate = "23-01-2011" thumbnail="http://www.boodang.com/api/thumb/boodean_logo.png" />

<audio title="Terry Waychuk frequency2010" audio="http://www.boodang.com/api/audio/**Terry_Waychuk**/Terry_Waychuk_frequency2010.mp3" description="Terry Waychuk frequency2010" createddate = "23-01-2011" thumbnail="http://www.boodang.com/api/thumb/boodean_logo.png" />



<audio title="The Grimey Tech RandomHero FlooRLayer Scooty OH Mazik Boodang 10 Year Anniversary Promo Mix" audio="http://www.boodang.com/api/audio/**The_Grimey_Tech**/The_Grimey_Tech_RandomHero_FlooRLayer_Scooty_OH_Mazik_Boodang_10_Year_Anniversary_Promo_Mix.mp3" description="The Grimey Tech RandomHero FlooRLayer Scooty OH Mazik Boodang 10 Year Anniversary Promo Mix" createddate = "23-01-2011" thumbnail="http://www.boodang.com/api/thumb/boodean_logo.png" />

<audio title="The Grimey Tech and Titus 1 Warper Warfare" audio="http://www.boodang.com/api/audio/**The_Grimey_Tech**/The_Grimey_Tech_and_Titus_1_Warper_Warfare.mp3" description="The Grimey Tech and Titus 1 Warper Warfare" createddate = "23-01-2011" thumbnail="http://www.boodang.com/api/thumb/boodean_logo.png" />
.
.
.
.
.

第一个属性有一个相同文件名的 mp3 文件。 ** ** 中表示的文件名和接下来的两个也有一个相同文件名的 mp3 文件。所以我想根据文件名显示一个 ListView 。首先我想显示一个这样的 ListView

 Terry_Waychuk

The_Grimey_Tech

点击其中任何一个后,将 ListView 显示为 mp3 文件标题(前两个在 Terry_Waychuk 中,后两个在 The_Grimey_Tech 中)。所以请告诉我如何获取属性值中的特定名称以及如何将特定的 mp3 文件添加到该文件夹​​(Terry_Waychuk 或 The_Grimey_Tech)。

最佳答案

使用 android 的一种方法 XmlPullParser (您没有指定您使用的是哪个)是将属性拉入 Map<String, String>当您收到 XmlPullParser.START_TAG 时,假设有一个主要解析::

private void parseContent(XmlPullParser parser) 
throws XmlPullParserException,IOException,Exception {
int eventType;
while((eventType=parser.next()) != XmlPullParser.END_TAG) {
if (eventType == XmlPullParser.START_TAG) {
Log.d(MY_DEBUG_TAG,"Parsing Attributes for ["+parser.getName()+"]");
Map<String,String> attributes = getAttributes(parser);
}
else if(eventType==...);
else {
throw new Exception("Invalid tag at content parse");
}
}
}

private Map<String,String> getAttributes(XmlPullParser parser) throws Exception {
Map<String,String> attrs=null;
int acount=parser.getAttributeCount();
if(acount != -1) {
Log.d(MY_DEBUG_TAG,"Attributes for ["+parser.getName()+"]");
attrs = new HashMap<String,String>(acount);
for(int x=0;x<acount;x++) {
Log.d(MY_DEBUG_TAG,"\t["+parser.getAttributeName(x)+"]=" +
"["+parser.getAttributeValue(x)+"]");
attrs.put(parser.getAttributeName(x), parser.getAttributeValue(x));
}
}
else {
throw new Exception("Required entity attributes missing");
}
return attrs;
}

parser.getName()返回与 XmlPullParser.START_TAG 关联的实体的名称.

希望对你有帮助

关于android - xml解析中如何解析属性中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4827168/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com