System.getProperty(“path.separator”)无法按预期工作

时间:2012-06-26 10:11:23

标签: java string split

import java.lang.System;

public class Splitter{

 public static void main(String args[]){

  String path_separator = "Path separator is: " + System.getProperty("path.separator");

  String str = "abc:def:gha";

  System.out.println(path_separator);

  String[] temp;

  temp = str.split(path_separator);

  for(int i=0; i<temp.length; i++)
    System.out.println(temp[i]);

 }
}

java Splitter

路径分隔符是::

ABC:DEF:GHA

写作时

temp = str.split(":");

代替

java Splitter

路径分隔符是::

ABC 高清 GHA

那么“:”与“:”有什么不同,或者我错过了什么?

同样的事情:

System.getProperty("line.separator")

由于 托马斯

2 个答案:

答案 0 :(得分:6)

您错误地初始化了path_separator,因此在第一次运行时,您尝试将str分割为"Path separator is: :",而不是":"

正确的代码应该是

String path_separator = System.getProperty("path.separator");

...

System.out.println("Path separator is: " + path_separator);

答案 1 :(得分:2)

您按str.split(path_separator);拆分,路径分隔符为

String path_separator = "Path separator is: " + System.getProperty("path.separator"); 

这是一个完整的句子。

尝试:

str.split(System.getProperty("path.separator"));