gpt4 book ai didi

数字字符串上的 Java String.split()

转载 作者:行者123 更新时间:2023-12-01 06:51:11 26 4
gpt4 key购买 nike

我有一个“|”具有 2 列的分隔 csv 文件:

A    |B
87657|5
87688|8
32134|4
...

我想通过读取此文件来制作一个 Map,将 A 列值作为字符串,将 B 列值作为 int。

我愿意(分隔符=“|”):

    Map<String, Integer> output = new HashMap<>();
assert delimiter.length() == 1;
int count = 0;
for(String line: Files.readAllLines(Paths.get(docidFreq), Charset.defaultCharset())) {
count++;
//skipping header row
if (count == 1 ) {
continue;
}
String tokens[] = line.split(delimiter);
output.put(tokens[0], Integer.parseInt(tokens[1]));
}
return output;

但是,映射包含单位数字键和值,例如(与上面给出的示例文件行无关):

1:2
8:5
9:3
...

我做错了什么?

最佳答案

当您使用符号“|”时你必须用两个'\'来转义它,如下所示。

split("\\|");

关于数字字符串上的 Java String.split(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27858604/

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