字符串拆分Java不工作

字符串拆分Java不工作,java,string,split,Java,String,Split,我试过与其他一些文本分开,在那里效果很好,但在这里不行。有人能告诉我我做错了什么吗 private static String fileName = "jjjj.txt"; private static String userName = "xxxx"; private static String password = "yyyy"; public static void main(String args[]){ String info = "UserName" +"|"+ user

我试过与其他一些文本分开,在那里效果很好,但在这里不行。有人能告诉我我做错了什么吗

private static String fileName = "jjjj.txt";

private static String userName = "xxxx";
private static String password = "yyyy";
public static void main(String args[]){

    String info = "UserName" +"|"+ userName + "|" + password + "|" + fileName;
    String tempStr[] = info.split("|");
    System.out.println(tempStr[0]);
    System.out.println(tempStr[1]);
    System.out.println(tempStr[2]);
    System.out.println(tempStr[3]);
}
我得到的输出是:

U
s
e
我应该怎么做才能得到如下输出:

UserName
xxxx
yyyy
jjjj.txt

必须在正则表达式中转义
|
。这应该起作用:

String tempStr[] = info.split("\\|");

必须在正则表达式中转义
|
。这应该起作用:

String tempStr[] = info.split("\\|");

管道,
|
,是一个正则表达式保留字符。使用
\\\\\
。为什么还要构建一个字符串,然后拆分它?您只需使用
tempStr[]={“用户名”,用户名,密码,文件名}。或者至少使用不同的分隔符。管道,
|
,是正则表达式保留字符。使用
\\\\\
。为什么还要构建一个字符串,然后拆分它?您只需使用
tempStr[]={“用户名”,用户名,密码,文件名}。或者至少使用不同的分隔符。