Thu Sep 08 2011 00:00:00 GMT+0800 (China Standard Time)大家看看这个时间字段如何格式 话呀 格式话成 Date类型

解决方案 »

  1.   

    SimpleDateFormat的parse方法。
      

  2.   

    我是这么写的 报异常了
    SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    Date time = s.parse(value);

    String stime = s.format(time);

    pre.setString(1, stime);================================================================
    ///////////////////Thu Sep 08 2011 00:00:00 GMT+0800 (China Standard Time)
    java.text.ParseException: Unparseable date: "Thu Sep 08 2011 00:00:00 GMT+0800 (China Standard Time)"
    at java.text.DateFormat.parse(DateFormat.java:337)
    at bean.ShopCrudBean.editorInfo(ShopCrudBean.java:81)
      

  3.   

    Thu Sep 08 2011 00:00:00 GMT+0800 (China Standard Time)
    这个是什么 是个字符串(String)?
      

  4.   

    Thu Sep 08 2011 00:00:00 GMT+0800 (China Standard Time) 本身就是一个new date()出来的date值吧 
    这个值直接就可以用SimpleDateFormat来格式化
      

  5.   

    你的这个 Thu Sep 08 2011 00:00:00 GMT+0800 (China Standard Time) 
    是直接System.out.println出来的吧。
      

  6.   

    你是想把string格式化成date,还是想把date格式化成date?
      

  7.   

    来的是时间  2010-01-02 12:12:01 是string  想转换成 date
      

  8.   

    Date d = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat(
    "E MMM dd yyyy HH:mm:ss zZ", Locale.US);
    System.out.println(sdf.format(d));
    直接格式化 date 类型 d 
      

  9.   


    package com;import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;public class DateTool { public static final String DATE_BASIC = "yyyy-MM-dd HH:mm:ss";

    /**
     * 将字符串按指定格式转换成Date
     * @param str
     * @param style
     * @return
     */
    public static Date stringToDate(String str, String style){
    Date date = null;
    SimpleDateFormat sdf = new SimpleDateFormat(style);
    try {
    if(str==null||str.equals("")){
    date=null;
    }
    else{
    date = sdf.parse(str);
    }

    } catch (ParseException e) {
    e.printStackTrace();
    }
    return date;
    }

    /**
     * 将日期按指定格式转换成字符串
     * @param date
     * @param style
     * @return
     */
    public static String dateToString(Date date, String style) {
    SimpleDateFormat sdf = new SimpleDateFormat(style);
    if (date != null) {
    return sdf.format(date);
    }
    return null;
    }

    /**
     * Main
     * @param args
     */
    public static void main(String[] args) {
    System.out.println(DateTool.dateToString(DateTool.stringToDate("2010-01-02 12:12:01", DateTool.DATE_BASIC), DateTool.DATE_BASIC));
    }}
      

  10.   

    谢谢 楼上的辛苦了 我试了一下 13 and 14 的都不行 问题他是它来时 的格式 是 Thu Sep 08 2011 00:00:00 GMT+0800 
      

  11.   

    那个是你打印出来的格式,实际上调用的是Date的toString方法。
      

  12.   

    我页面 输入的是年月日时分秒格式  到后台我输出格式Thu Sep 08 2011 00:00:00 GMT+0800现在我想把他转成  年月日时分秒格式  插入到数据库  应该 采用string根式把我就想实现这个功能
      

  13.   

    你页面上年月日对应后台的是Date还是String类型?
      

  14.   

    穿过来的 是 String 
      

  15.   

    看来 应该格式成 string 类型把
      

  16.   

    public static String convertToString(Date date) {
    Calendar calendar = new GregorianCalendar();
    calendar.setTime(date);
    String dateStr = "";
    dateStr += calendar.get(Calendar.YEAR) + "-"
    + (calendar.get(Calendar.MONTH) + 1) + "-"
    + calendar.get(Calendar.DATE) + " "
    + calendar.get(Calendar.HOUR_OF_DAY) + ":";
    // 如果分钟数或秒数小于10则在分钟数或秒数前面补零
    int minute = calendar.get(Calendar.MINUTE);
    String minuteAndSecondStr = "";
    if (minute < 10) {
    minuteAndSecondStr += "0";
    }
    minuteAndSecondStr += minute + ":";
    int second = calendar.get(Calendar.SECOND);
    if (second < 10) {
    minuteAndSecondStr += "0";
    }
    minuteAndSecondStr += second;
    dateStr += minuteAndSecondStr;
    return dateStr;
    }
      

  17.   

    String str="Thu Sep 08 2011 00:00:00 GMT+0800 (China Standard Time)";
    SimpleDateFormat sdf=new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss 'GMT'Z' (China Standard Time)'",Locale.ENGLISH);
    sdf.parse(str);
      

  18.   

    String str="value";
                SimpleDateFormat sdf=new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss 'GMT'Z' (China Standard Time)'",Locale.ENGLISH);
             //   String s = 
                
            
         System.out.println(sdf.parse(str)+"mmmmmmmmmmmmm");不行输出是java.text.ParseException: Unparseable date: "Mon Jul 25 2011 00:00:00 GMT+0800"
      

  19.   

    Extjs 页面传来的 年月日时分秒 后台输出 页面传过来的值是Thu Sep 08 2011 00:00:00 GMT+0800所以我要把他插入数据哭  所以他得 是时间格式呀 so无论是string啥 都得插入数据库 呀
      

  20.   


    你咋这么懒呢 我是就你的例子写的
    你把里面的格式改改不就行了
    new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss 'GMT'Z",Locale.ENGLISH);
      

  21.   

    你把你的时间用上面写的dateToString输出试试,看看能打印不?
      

  22.   

    Fri Sep 02 2011 00:00:00 GMT+0800 后台接收到的就是这个 格式的
      

  23.   

    这种格式是 带什么时区的 fuck 我接着整他