java useDelimeter在-上分割

问题描述 投票:1回答:3

我正在尝试解析一个看起来像]的txt文件>

A - 19
B - 2
C - 3

而且我正在使用扫描仪方法读取它并分成“-”,这样我的输出将看起来像:

A
19
B
2
C
3

但是似乎无法正确拆分。这就是部分代码的样子:

Scanner s = new Scanner(fileName).useDelimiter("\\s*-\\s*");
System.out.println(s.next());
System.out.println(s.next());

s.close();

我希望它看起来像:

A
19

但是我的输出是:

A
19
B

我正在尝试解析一个看起来像A-19 B-2 C-3的txt文件,我正在使用扫描仪方法读取该文件并将其分割为“-”,这样我的输出将类似于:A 19 B 2 C 3但是...

java regex java.util.scanner
3个回答
2
投票

您应将此正则表达式用作分隔符:


0
投票

我是因为您不仅想在"-"上进行拆分,还希望在新行上进行拆分。您将必须使用以下定界符:


0
投票
  public static void main(String[] args) throws FileNotFoundException {
    String fileName = "C://temp//split.txt";
    try (Scanner s = new Scanner(new File(fileName)).useDelimiter(" - ")) {
      while(s.hasNext()) {
        System.out.println(s.next());
      }
    }
  }
© www.soinside.com 2019 - 2024. All rights reserved.