java格式化时间到毫秒:
SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss:SSS");
String formatStr =formatter.format(new Date();
附录:
java格式化字母表
Symbol | Meaning | Presentation | Example |
---|---|---|---|
G | era designator | Text | AD |
y | year | Number | 2009 |
M | month in year | Text & Number | July & 07 |
d | day in month | Number | 10 |
h | hour in am/pm (1-12) | Number | 12 |
H | hour in day (0-23) | Number | 0 |
m | minute in hour | Number | 30 |
s | second in minute | Number | 55 |
S | millisecond | Number | 978 |
E | day in week | Text | Tuesday |
D | day in year | Number | 189 |
F | day of week in month | Number | 2 (2nd Wed in July) |
w | week in year | Number | 27 |
W | week in month | Number | 2 |
a | am/pm marker | Text | PM |
k | hour in day (1-24) | Number | 24 |
K | hour in am/pm (0-11) | Number | 0 |
z | time zone | Text | Pacific Standard Time |
' | escape for text | Delimiter | (none) |
' | single quote | Literal | ' |
取得系统时间
1
。
long
time=System.currentTimeMillis();
2
。
final
Calendar mCalendar=Calendar.getInstance();
mCalendar.setTimeInMillis(time);
取得小时:mHour=mCalendar.get(Calendar.HOUR);
取得分钟:mMinuts=mCalendar.get(Calendar.MINUTE);
3
。
Time t=
new
Time();
// or Time t=new Time("GMT+8"); 加上Time Zone资料
t.setToNow();
// 取得系统时间。
int
year = t.year;
int
month = t.month;
int
date = t.monthDay;
int
hour = t.hour;
// 0-23
4
。
DateFormat df =
new
SimpleDateFormat(
"HH:mm:ss"
);
df.format(
new
Date());
Android中获取系统时间有多种方法,可分为Java中Calendar类获取,java.util.date类实现,还有android中Time实现
现总结如下:
方法一;
-
void getTime1(){
-
long time=System.currentTimeMillis();//long now = android.os.SystemClock.uptimeMillis();
-
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-
Date d1=new Date(time);
-
String t1=format.format(d1);
-
Log.e("msg", t1);
-
}
方法二;
-
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss");
-
String t=format.format(new Date());
-
Log.e("msg", t);
方法三;
-
void getTime3(){
-
Calendar calendar = Calendar.getInstance();
-
String created = calendar.get(Calendar.YEAR) + "年"
-
+ (calendar.get(Calendar.MONTH)+1) + "月"//从0计算
-
+ calendar.get(Calendar.DAY_OF_MONTH) + "日"
-
+ calendar.get(Calendar.HOUR_OF_DAY) + "时"
-
+ calendar.get(Calendar.MINUTE) + "分"+calendar.get(Calendar.SECOND)+"s";
-
Log.e("msg", created);
-
}
-
void getTime4(){
-
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone资料。
-
t.setToNow(); // 取得系统时间。
-
String time=t.year+"年 "+(t.month+1)+"月 "+t.monthDay+"日 "+t.hour+"h "+t.minute+"m "+t.second;
-
Log.e("msg", time);
-
}
获取星期日期:
-
Calendar calendar = Calendar.getInstance();
-
int day = calendar.get(Calendar.DAY_OF_WEEK);
-
String today = null;
-
if (day == 2) {
-
today = "Monday";
-
} else if (day == 3) {
-
today = "Tuesday";
-
} else if (day == 4) {
-
today = "Wednesday";
-
} else if (day == 5) {
-
today = "Thursday";
-
} else if (day == 6) {
-
today = "Friday";
-
} else if (day == 7) {
-
today = "Saturday";
-
} else if (day == 1) {
-
today = "Sunday";
-
}
-
System.out.println("Today is:- " + today);
最后说一下日期格式化,日期格式化通常使用SimpleDateFormat类实现,其中的日期格式不能够自己随意定义,主要有以下几种形式:
SimpleDateFormat f1= new SimpleDateFormat(); //其中没有些格式化参数,我们使用默认的日期格式。
System.out.println(f.formate(new Date()));
代码输出的日期格式为:12-3-22 下午4:36
SimpleDateFormat f4= new SimpleDateFormat("今天是"+"yyyy年MM月dd日 E kk点mm分");//可根据不同样式请求显示不同日期格式,要显示星期可以添加E参数
System.out.println(f4.format(new Date()));
代码输出的日期格式为:今天是2012年03月22日 星期四 16点46分
SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd hh:mm:ss");
System.out.println("Date to String "+formater.format(new Date()));
相近的常用形式还有 yyMMdd hh:mm:ss yyyy-MM-dd hh:mm:ss dd-MM-yyyy hh:mm:ss
应有的时候通常还会需要把具体日期转换为毫秒或者Timestamp形式,如下:
文本 - > Timestamp,日期 -> Timestamp
Timestamp t ;
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
try ...{
t = new Timestamp(format.parse("2007-07-19 00:00:00").getTime());
} catch (ParseException e) ...{
e.printStackTrace();
}
Timestamp t ;
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
t = new Timestamp(new Date().getTime());