java 时间格式化
package i.work; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Timeformat { // 将字符串转为时间戳 public static long getTime(String user_time) { long l = 0; // 默认的时间字符串格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); Date d; try { d = sdf.parse(user_time); l = d.getTime(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } return l; } // 将时间戳转为字符串 public static String getStrTime(long cc_time) { String re_StrTime = null; SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); // 例如:cc_time=1291778220 long lcc_time = cc_time; // 返回的就是毫秒数,*1000是干什么? re_StrTime = sdf.format(new Date(lcc_time)); return re_StrTime; } }
日期和时间模式 | 结果 |
---|---|
"yyyy.MM.dd G 'at' HH:mm:ss z" |
2001.07.04 AD at 12:08:56 PDT |
"EEE, MMM d, ''yy" |
Wed, Jul 4, '01 |
"h:mm a" |
12:08 PM |
"hh 'o''clock' a, zzzz" |
12 o'clock PM, Pacific Daylight Time |
"K:mm a, z" |
0:08 PM, PDT |
"yyyyy.MMMMM.dd GGG hh:mm aaa" |
02001.July.04 AD 12:08 PM |
"EEE, d MMM yyyy HH:mm:ss Z" |
Wed, 4 Jul 2001 12:08:56 -0700 |
"yyMMddHHmmssZ" |
010704120856-0700 |
"yyyy-MM-dd'T'HH:mm:ss.SSSZ" |
2001-07-04T12:08:56.235-0700 |
java 的simplefomat 直接写不出RFC3339的格式。要另外实现
在android里面可以用android的库,安卓用的全是UTC时间.
package i.work; // //import java.text.ParseException; //import java.text.SimpleDateFormat; //import java.util.Date; import android.text.format.Time; public class Timeformat { // 将字符串转为时间戳 private static Time t = new Time();; public static long getTime(String user_time) { long l = 0; // 默认的时间字符串格式 t.parse3339(user_time); l = t.toMillis(true); // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'Z"); // Date d; // try { // d = sdf.parse(user_time); // l = d.getTime(); // } catch (ParseException e) { // // TODO Auto-generated catch block // e.printStackTrace(); // } return l; } // 将时间戳转为字符串 public static String getStrTime(long cc_time) { String re_StrTime = null; t.set(cc_time); // //RFC3339 // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); // // 例如:cc_time=1291778220 // long lcc_time = cc_time; // // 返回的就是毫秒数,*1000是干什么? // re_StrTime = sdf.format(new Date(lcc_time)); re_StrTime = t.format3339(false); return re_StrTime; } }