【问题标题】:useDelimiter won't recognize vertical baruseDelimiter 无法识别竖线
【发布时间】:2016-03-04 16:41:21
【问题描述】:

useDelimiter 不会识别竖线,但会识别其他字符。

这不起作用:

scan.useDelimiter("|");

这确实有效:

scan.useDelimiter(",");

其余代码:

Scanner scan = new Scanner("12,d,  |, f | ");

// initialize the string delimiter
scan.useDelimiter(",");

// Printing the delimiter used
System.out.println("The delimiter use is "+scan.delimiter());

// Printing the tokenized Strings
while(scan.hasNext()){
    System.out.print(scan.next());
}

// closing the scanner stream
scan.close();

【问题讨论】:

    标签: java delimiter


    【解决方案1】:

    你需要通过do来转义竖线(竖线字符);

    scan.useDelimiter("\\|");
    

    【讨论】:

    • 谢谢,就是这样。
    • 当我尝试这样做时,扫描仪将管道分隔的字符串转换为逗号分隔的字符串。现在我必须对结果进行拆分以从文件中获取各个元素。对我来说毫无意义。
    【解决方案2】:

    为我工作

    sc.useDelimiter("\\|");
    

    sc.useDelimiter("[|]");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-09
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 2022-08-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多