【问题标题】:Parse RSS XML with Kotlin使用 Kotlin 解析 RSS XML
【发布时间】:2021-02-15 11:51:39
【问题描述】:

这是我的 Kotlin 数据类。我想解析 RSS,但我收到一条消息,例如“项目”在课堂上没有匹配项...

@Root(name = "channel", strict = false)
data class ArticleList(
    @ElementList(name = "item", inline = true)
    val articleList: List<Article>
)

@Root(name = "item", strict = false)
data class Article(
    @Element(name="title")
    val title: String
)

有人可以帮我解析 RSS 吗?比如https://learningenglish.voanews.com/api/zkm-qem$-o

如果我想获取item标签下的所有title标签,代码怎么写?

【问题讨论】:

    标签: android xml parsing kotlin xml-parsing


    【解决方案1】:

    RSS-Parser 可以帮助您做到这一点。 在你的build.gradle:

    dependencies {
        implementation 'com.prof18.rssparser:rssparser:3.1.3'
    }
    

    使用方法:

    fun fetchRssData() : ArrayList<String> {
            val parser = Parser.Builder()
                .context(this)
                .charset(Charset.forName(StandardCharsets.UTF_8.name()))
                .cacheExpirationMillis(24L * 60L * 60L * 100L) // one day
                .build()
    
            val titleList = arrayListOf<String>();
    
            runBlocking {
                launch {
                    val chanel = parser.getChannel(url = "https://learningenglish.voanews.com/api/zkm-qem$-o")
                    Log.d("MyChanel", chanel.toString())
    
                    for (art in chanel.articles) {
                        titleList.add(art.title!!)
                    }
                }
            }
    
            return titleList
        }
    
    

    注意:这似乎适用于英语,但不适用于越南语。

    【讨论】:

      猜你喜欢
      • 2019-07-02
      • 2012-01-04
      • 1970-01-01
      • 1970-01-01
      • 2012-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多