1、java.util.Date类型转换成long类型
- java.util.Date dt = new Date();
- System.out.println(dt.toString()); //java.util.Date的含义
- long lSysTime1 = dt.getTime() / 1000; //得到秒数,Date类型的getTime()返回毫秒数
2、由long类型转换成Date类型
- SimpleDateFormat sdf= new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
- //前面的lSysTime是秒数,先乘1000得到毫秒数,再转为java.util.Date类型
- java.util.Date dt = new Date(lSysTime1 * 1000);
- String sDateTime = sdf.format(dt); //得到精确到秒的表示:08/31/2006 21:08:00
- System.out.println(sDateTime);
//注意HH与hh含认不同,HH表示以24小时制取,hh表示以12小时制取
常用的格式的含义,摘自Jdk,注意大小写的含义通常是不同的:
3、"08/31/2006 21:08:00"格式的String转换java.util.Date类型
- String sDt = "08/31/2006 21:08:00";
- SimpleDateFormat sdf= new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
- Date dt2 = sdf.parse(sDt);
- //继续转换得到秒数的long型
- long lTime = dt2.getTime() / 1000;
//注意HH与hh含认不同,HH表示以24小时制取,hh表示以12小时制取
常用的格式的含义,摘自Jdk,注意大小写的含义通常是不同的:
- 字母 含义 示例
- y Year 1996;96 哪一年
- M Month in year J uly;Jul;07 一年中的哪一月
- m Minute in hour 30 一个小时中的第几分钟
- w Week in year 27 一年中的第几个星期
- W Week in month 2 一个月中的第几个星期
- D Day in year 189 一年中的第几天
- d Day in month 10 一个月中的第几天
- H Hour in day (0-23) 0 一天中的第几个小时(24小时制)
- h Hour in am/pm (1-12) 12 一天中上午、下午的第几个小时(12小时制)
- S Millisecond 978 毫秒数
- s Second in minute 55 一分钟的第几秒
4、系统当前时间
- long lSysTime2 = System.currentTimeMillis(); //得到毫秒表示的系统当前时间
5、以当前系统的时间命名文件:
/**
* 使用当前的系统时间来命名文件。
*
* @param nameFormat
* 要命名的文件的日期格式 如:"yyyyMMdd_HHmmss"
* @param fileType
* 文件的类型 如:".mp3"
* @return
*/
@SuppressLint("SimpleDateFormat")
public static String Date2FileName(String nameFormat, String fileType) {
Date date = new Date(System.currentTimeMillis());
SimpleDateFormat dateFormat = new SimpleDateFormat(nameFormat);
String fileName = dateFormat.format(date) + fileType;
return fileName;
}