String er1 = "3206010042291|2008-04-1|2008-04-29";

String tmpYYYY1=er1.split("|")[0];
String tmpYYYY2=er1.split("|")[1];
String tmpYYYY3=er1.split("|")[2];

System.out.println(tmpYYYY1);
System.out.println(tmpYYYY2);
System.out.println(tmpYYYY3);
结果怎么是3
2

解决方案 »

  1.   

                    String er1 ="3206010042291|2008-04-1|2008-04-29"; 
    String tmpYYYY1[]=er1.split("\\|"); 
    for(int i=0;i<tmpYYYY1.length;i++)
    System.out.print(tmpYYYY1[i]); 
      

  2.   

    因为你并没有把| 给分离掉!你在.split()里面写的正则表达式,不能被正确解析
      

  3.   

    String er1 = "3206010042291 |2008-04-1 |2008-04-29"; String tmpYYYY1=er1.split(" \\|")[0]; 
    String tmpYYYY2=er1.split(" \\|")[1]; 
    String tmpYYYY3=er1.split(" \\|")[2]; System.out.println(tmpYYYY1); 
    System.out.println(tmpYYYY2); 
    System.out.println(tmpYYYY3); "|"在java代码中用\\|表示
      

  4.   

    用"|"分割的是把里面的字母都分割开了.
    String er1 = "3206010042291 |2008-04-1 |2008-04-29 ";
            String tmpYYYY1[]=er1.split("|"); 
            System.out.println((er1.split("|")).length);
            for(int i=0;i<tmpYYYY1.length;i++){
                System.out.print(tmpYYYY1[i]+"|");
            }
    结果是:
    |3|2|0|6|0|1|0|0|4|2|2|9|1| |||2|0|0|8|-|0|4|-|1| |||2|0|0|8|-|0|4|-|2|9| |