天天看點

格林威治時間轉換成字元串

字元串轉相應格式的日期再轉成特定格式字元串

public Text evaluate(Text date1 )
    {
        //源資料格式 "31/Aug/2015:00:04:37 +0800"
       // 目标格式 20150831000437
        /*
        思路:
        1、将字元串轉成一樣格式的日期 也就是将字元串解析成相應格式的日期
        2、再将日期以想要的格式以字元串的形式輸出
        **/
        String strDate = date1.toString() ;

        //将字元串本身的雙引号去掉
        strDate = strDate.replace("\"","");
        //根據空格分割 因為我這裡隻根據将前面的字元串解析成日期
        String[] items = strDate.split(" ");

        //定義一個時間格式化對象 因為這個類執行個體在高并發時會發生線程不安全的情況 是以設定成局部變量
        SimpleDateFormat sdf1 = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss");

        Date date = null;
        try {
            //将特定格式的字元串解析成日期Date
            date = sdf1.parse(items[]);
        } catch (ParseException e) {
            e.printStackTrace();
        }

        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyyMMddHHmmss",Locale.ENGLISH);
        //再将日期以特定的格式化輸出
        return new Text(sdf2.format(date)) ;
    }