经常在系统中显示时间长度,基本上每次都是显示秒数,客户觉得按时分秒("HH:mm:ss")的格式显示比较明了,一般开发人员都是自己去计算小时是多少?分钟是多少...,其实可以用DateFormat来格式这个显示方式。示例代码如下:示例:
计算某人总的登陆时间
登陆时间是10:12:14
结束时间是15:20:35
示例代码:
Calendar c1 = new GregorianCalendar(2007, 1, 16, 10, 12, 14);
Calendar c2 = new GregorianCalendar(2007, 1, 16, 15, 20, 35);
SimpleDateFormat formatter= new SimpleDateFormat("HH:mm:ss");
// 设置格式化器的时区为格林威治时区,否则格式化的结果不对,中国的时间比格林威治时间早8小时,比如0点会被格式化为8:00
formatter.setTimeZone(TimeZone.getTimeZone("GMT+0:00"));
long l = c2.getTimeInMillis() - c1.getTimeInMillis();
System.out.println("秒数:" + l);
System.out.println("时分秒:" + formatter.format(l));
输出结果:
毫秒数:18501000
时分秒:05:08:21
注销设置TimeZone,输出结果:
毫秒数:18501000
时分秒:13:08:21
上面的代码不能格式化年、月、日的长度,只能是时间,因为java的时间是从1970年1月1日开始的。
若需要年月日,则只能自己去年月日字段拼装,如:
StringBuffer result = new StringBuffer();
// 添加年-月-日,可以自己判断补0,比如年份为4位获两位,月份是两位,天数是两位
result.append(calendar.get(Calendar.YEAR) - 1970).append("-");
result.append(calendar.get(Calendar.MONTH)).append("-");
result.append(calendar.get(Calendar.DAY_OF_MONTH) - 1).append(" ");
分享到:
相关推荐
`DateFormat`和`SimpleDateFormat`类在处理国际化时也很有用,可以通过`setLocale(Locale locale)`方法设置区域设置,以适应不同地区的日期和时间格式习惯。 总之,`DateFormat`和`SimpleDateFormat`是Java中处理...
- **示例**: `v = formatdatetime(x, DateFormat.LongDate)` 格式化为长日期格式。 #### 11. MonthName: 月份名称 - **功能**: 返回月份的名称。 - **参数**: - `n`: 月份。 - **示例**: `v = monthname(5)` 返回...
- `dateFormat`:设置日期格式,将数据格式化为日期。 3. Legend(图例)属性和方法 - `legend`:这是图表对象,用于设置图例。 - `align`:设置图例的颜色排列样式。 - `marginLeft`:设置图例的左边距。 - `...
- **Calendar**: 是一个抽象类,用于处理日期和时间字段,如年、月、日、时、分、秒等。它是Date的高级版本,提供更多的日期时间操作功能。 - **DateFormat**: 用于格式化和解析日期。它可以将Date对象转换为字符串...
12. 日期格式化:DateFormat类是java.text包中的一个类,用于实现日期与字符串之间的相互转换,其中的方法可以将日期对象格式化为字符串。 13. 枚举类型:JDK 1.5引入了枚举类型,使用enum关键字定义枚举类,枚举类...
`DateFormat`类位于`java.text`包中,它允许我们将日期和时间格式化为各种文化和语言习惯的样式。`getDateInstance()`方法返回一个根据用户系统区域设置的默认日期格式器。在`NowString`类中,我们创建了一个`...
题目涉及了域名和IP地址的概念、数据类型的字段宽度、表的结构、网络拓扑...格式、变量作用域、HTML与JavaScript的结合、Internet的定义、日期时间类、触发器、标签属性、C语言程序执行、break语句的用途、Excel图表...
`SimpleDateFormat`是`DateFormat`的子类,可以按照指定的模式将日期格式化为字符串或将字符串解析为日期。模式中的字母有特定含义,例如"yyyy-MM-dd HH:mm:ss",但连接模式的符号可以根据需求改变。 2. 日历类 `...
22. 日期格式化:Java中的`DateFormat`类或`SimpleDateFormat`类用于将日期和时间格式化为字符串。 23. 循环判断:此程序会一直执行循环直到`num`大于3,因此输出2。 24. 报表功能:报表主要用于数据的输出和展示...
`DateFormat` 是一个抽象类,用于将 `Date` 对象格式化为字符串或将字符串解析为 `Date` 对象。 #### 10. C++ 编译目标文件扩展名 - **题目**: 由 C++ 源程序文件编译而成的目标文件的默认扩展名为? - A. cpp - ...
2. 数组初始化:在Java中,创建一个长度为25的整数数组`int[] x = new int[25]`后,所有元素默认初始化为0,因此x[24]为0,选项A正确。 3. 排序算法比较次数:冒泡排序在最坏的情况下比较次数为n(n-1)/2,快速排序...
6. Java中的DateFormat类专门用于日期格式化为字符串。 7. 显示器是计算机的输出设备,用于显示信息。 8. 报表设计通常在报表设计视图中进行,选项C正确。 9. 计算机内部信息的存储、处理和传递都是以二进制形式...
7. Java中的DateFormat类用于将日期格式化为字符串,便于日期的显示和处理。 8. 计算机病毒是一种破坏性的程序,反病毒软件需要不断更新以对抗新出现的病毒。 9. 关系数据库中,主码用于唯一标识元组,实现实体...
此外,Jil对时间的处理默认采用ISO8601格式,但是通过配置可以进行修改,例如使用Options类来指定时间格式、包括继承的成员以及序列化时的命名格式。 下面的代码展示了如何配置Jil的序列化选项,并使用这些选项来...
`DateFormat.getDateInstance(int style, Locale)`方法根据指定的样式(如短、中、长日期格式)和本地化信息来格式化日期,如`DateFormat.MEDIUM`会输出中等长度的日期,如"Jan 8, 2007"。 3. `MessageFormat`:这...
1. Java中的`DateFormat`类用于将日期格式化为字符串,提供了多种日期和时间格式化的可能性。 2. 在Java中,标识符不能以数字开头,因此`a*b`是非法的。 3. HTML中的`<form>`标记的`method`属性通常取值为`GET`或`...
9. Java 中,DateFormat或SimpleDateFormat类可以用于日期格式化为字符串。 10. 在BROWSE浏览窗口中,CTRL+T键可以实现逻辑删除记录和逻辑恢复记录。 11. 在条件表达式`a < b ? a : b`中,如果a=-14,b=3,则条件...
19. Java中,DateFormat或SimpleDateFormat类用于将日期格式化为字符串。 20. Web窗体页C#代码的模型有两种,单文件页模型和代码隐藏页模型,后者将代码和界面分离。 21. Collection的子接口List和Set,List特点是...