gpt4 book ai didi

android - 读取 .txt 并将信息放入 hashMap

转载 作者:行者123 更新时间:2023-11-29 22:46:42 25 4
gpt4 key购买 nike

我有一个元素列表,第一个元素是名称城市,第二个信息是关于城市的。我想读取文件 cities.txt 并将列表的信息放在 hashMap 中。在文件 cities.txt 中,城市和元素对于一个选项卡是分开的。但是当我将这些 fragment 放入 hashMap 时,第二个 fragment 不会保存。

private fun readFile() {
var cityToDefn = java.util.HashMap<String, String>()
val cities = ArrayList<String>()
val reader = Scanner(resources.openRawResource(R.raw.cities))
while (reader.hasNextLine()) {
val line = reader.nextLine()
var pieces = line.split("\\s".toRegex())

if (pieces.size >= 2) {
cities.add(pieces[0])
cityToDefn.put(pieces[0], pieces[1])
}
}
}

城市.txt

 lisboa  castelo de são jorge
porto torre dos clerigos
aveiro ria
lisboa terreiro do paço
porto avenida dos aliados
lisboa marques de pombal
aveiro igreja da glória

最佳答案

您说城市后面有一个制表符,但在您的示例中它看起来像多个空格。所以你可以使用 \\s+ 来分割第一组空白。并添加两个的限制,这样描述就不会被分解:

var pieces = line.split("\\s+".toRegex(), 2)

如果有两个单词的城市怎么办?然后我认为你真的需要在城市名称后面有一个制表符,你可以在制表符上拆分,没有正则表达式:

var pieces = line.split('\t')

关于android - 读取 .txt 并将信息放入 hashMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58309353/

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