大家好  我是新手请教一下   比如 在数据库取出这样的  一个字符串    20090804155252    
把这个字符串 拆分成    08/04/2009    15   52  52 这四个字符串   赋给四个变量 
 应该如何拆分  请帮忙写出过程  谢谢

解决方案 »

  1.   

    String temp ="20090804155252";
    String a = temp.substring(4, 6)+ "/" + temp.substring(6, 8)+ "/" + temp.substring(0, 4);
    String b = temp.substring(8, 10);
    String c = temp.substring(10, 12);
    String d = temp.substring(12, 14);
      

  2.   

    只有用substring();substring(i,k);
    i:要截取字符串的起始位置的索引
    k:要截取字符串的结束位置的索引,但不包含该位置的字符
      

  3.   

    我提供个方法,先将字符串转换为Calendar型,输出时再转换String,输出的日期格式可以自己定
    import java.sql.Timestamp;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;public class MyTest1 { /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    MyTest1 test = new MyTest1();
    Calendar cal = test.stringToCal("2009080415525", "yyyyMMddHHmmss");
    String str = test.calToString(cal, "yyyy-MM-dd HH:mm:ss");
    System.out.println(str);
    } /**
         * 将字符串日期转换成Calendar型
         * @param datestring
         * @param format
         * @return
         */
    public static Calendar stringToCal(String datestring,String format)
        {
          Calendar cal = Calendar.getInstance();
          SimpleDateFormat df = new SimpleDateFormat ( format );
          try
          {
           if (datestring!=null && datestring.length()!=0)
           cal.setTime(new Timestamp(df.parse(datestring).getTime()));
          }
          catch (Exception ex)
          {
           ex.printStackTrace();
           cal =null;
          }
          return cal;
        }

    /**
         * 将Calendar型转换为String型,指定日期格式输出
         * @param source_cal
         * @param format
         * @return
         */
    public static String calToString(Calendar source_cal,String format)
        {
          String dateString = null;      try{
            if (source_cal!=null){
              SimpleDateFormat sdf = new SimpleDateFormat (format);
              sdf.setCalendar(source_cal);
              dateString = sdf.format(source_cal.getTime());
            }
          }catch (Exception ex)
          {
            System.out.println(ex.getMessage());
            dateString = null;
          }     
          return dateString;
          
        }
    }
      

  4.   

    main方法可以改成:MyTest1 test = new MyTest1();
    Calendar cal = test.stringToCal("2009080415525", "yyyyMMddHHmmss");
    String str = test.calToString(cal, "MM/dd/yyyy,HH,mm,ss");
    String[] strs = str.split(",");
    for (String string : strs) {
    System.out.println(string);
    string = null;
    }