原文转载:http://bosschen.iteye.com/blog/1409179
关键字: simpledateformat24小时 格式串
G | Era 标志符 | Text | AD |
y | 年 | Year | 1996; 96 |
M | 年中的月份 | Month | July; Jul; 07 |
w | 年中的周数 | Number | 27 |
W | 月份中的周数 | Number | 2 |
D | 年中的天数 | Number | 189 |
d | 月份中的天数 | Number | 10 |
F | 月份中的星期 | Number | 2 |
E | 星期中的天数 | Text | Tuesday; Tue |
a | Am/pm 标记 | Text | PM |
H | 一天中的小时数(0-23) | Number | 0 |
k | 一天中的小时数(1-24) | Number | 24 |
K | am/pm 中的小时数(0-11) | Number | 0 |
h | am/pm 中的小时数(1-12) | Number | 12 |
m | 小时中的分钟数 | Number | 30 |
s | 分钟中的秒数 | Number | 55 |
S | 毫秒数 | Number | 978 |
z | 时区 | General time zone | Pacific Standard Time; PST; GMT-08:00 |
Z | 时区 | RFC 822 time zone | -0800 |
java.text.SimpleDateFormat sf = new java.text.SimpleDateFormat("yyyyMMddkkmmss");
java.util.Date date = new java.util.Date();
String time = sf.format(date);
--得到的是24小时显示。
如果把kk换成hh,则是12小时显示。
个人说明:
转载的原因,是因为被坑了。选的数据是24小时制的,存到数据库里也是24小时制的,但是拿出来显示到页面竟然自动变成了12小时制的,很奇怪。以为是电脑设置的原因,可是电脑时间可以显示24小时制的啊。后来一路dubug,终于发现是使用了SimpleDateFormat,原代码如下:
/*** * 将Timestamp类型的数据转换成字符串 * @param date * @return 字符串类型且格式化后的日期 */ public static String getFormatYYYYMMDDHHMMSSS(Timestamp date){ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); return df.format(date); }
格式化中设置的是hh,小写的,它就表示“am/pm 中的小时数(1-12)”,所以原有的24小时制的经它格式化之后就成12小时制的了。将hh改成HH或kk就成。(哎,坑死人不偿命啊!)
相关推荐
`SimpleDateFormat` 支持多种模式字符,如 `y` 代表年份,`M` 代表月份,`d` 代表日期,`H` 代表24小时制的小时,`m` 代表分钟,`s` 代表秒。开发者可以根据需求自定义这些模式字符的组合,以满足各种日期和时间的...
它允许我们自定义日期/时间的显示格式,这在实际开发中非常有用,尤其是在处理不同地区或语言环境下的日期时间显示需求时。 #### 二、SimpleDateFormat的关键参数解释 在上面提供的代码示例中,我们可以看到不同的...
模式字符如'y'代表年,'M'代表月份,'d'代表日期,'H'代表24小时制的小时,'m'代表分钟,'s'代表秒。 3. **创建实例**: 创建`SimpleDateFormat`对象时,需要传递模式字符串作为构造函数的参数。例如: ```java ...
在Android系统中,获取当前时间的小时制是一个常见的需求,这涉及到用户界面的显示和时间处理逻辑。Android提供了丰富的API来处理时间和日期,包括检查系统是遵循24小时制还是12小时制。以下是关于这个主题的详细...
2. **24小时制与12小时制**:根据应用需求,时间可能需要在24小时制(如13:30)和12小时制(如1:30 PM)间切换。编程中,我们可以设置选项来选择显示方式。例如,在JavaScript中,通过`toLocaleTimeString()`方法并...
- `H`:表示一天中的小时数(0-23),用于24小时制。 - `m`:表示分钟(0-59)。 - `s`:表示秒(0-59)。 #### 3. 获取当前时间并格式化 ```java SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd...
"英文时间显示(二)"可能指的是在程序或应用中处理和显示英文格式的时间,这涉及到日期和时间的格式化、解析和国际化。下面将详细介绍相关知识点。 1. **日期和时间格式化**:在英语环境中,时间通常以24小时制或...
如果想要实时更新时间,可以使用Handler和Runnable来每隔一秒更新时间显示: ```java Handler handler = new Handler(); Runnable updateTimeRunnable = new Runnable() { @Override public void run() { // ...
- `H`:24小时制的小时(0-23) - `m`:分钟(0-59) - `s`:秒(0-59) 例如,"yyyy-MM-dd HH:mm:ss"表示"年-月-日 时:分:秒",而"yyyy年MM月dd日HH时mm分ss秒"则为中文格式的日期时间。 4. `parse`和`format`...
在实际开发中,可能还需要考虑到时区、用户设置(如24小时制或12小时制)等细节,以提供更完善的用户体验。如果你对源代码有疑问或者需要进一步的解释,可以深入研究`TimeDate`文件中的具体内容。
- 考虑到全球用户的需求,可能需要提供不同的时间格式,如12小时制和24小时制,以及不同的日期格式。大多数编程语言都提供了本地化支持,如JavaScript的`Intl.DateTimeFormat`,Python的`locale`模块,Java的`java....
- `HH`:小时(24小时制) - `mm`:分钟 - `ss`:秒 - `a`:上午/下午标记 #### 4. `Locale`类与地区设置 `Locale`类在Java中用来表示特定的地理、政治或文化区域。`SimpleDateFormat`通过接受一个`Locale`对象来...
- `HH`:24小时制中的小时数,两位数字格式(例如:00、01…23)。 - `h`:12小时制中的小时数,两位数字格式(例如:01、02…12)。 5. **分钟(Minute)** - `mm`:表示分钟,两位数字格式(例如:00、01…59...
`SimpleDateFormat`的构造函数允许程序员传入一个字符串模式,这个模式定义了日期和时间的显示格式。例如,`"yyyy年MM月dd日 HH时mm分ss秒"`会将日期格式化为“四位年份-两位月份-两位日期 两位小时两位分钟两位秒”...
其中,“`yyyy`”代表四位数的年份,“`MM`”表示两位数的月份,“`dd`”表示两位数的日期,“`HH:mm:ss`”则表示24小时制的时间。 #### 四、日期转字符串 要将日期转换为字符串,同样需要先创建一个`...
“yyyy”代表四位数的年份,“MM”代表两位数的月份,“dd”代表两位数的日期,“kk”代表24小时制的小时,“mm”代表分钟,“ss”代表秒。 2. **获取当前时间**: - `Date d = new Date(System....
例如,"yyyy"代表四位数的年份,"MM"代表两位数的月份,"dd"代表两位数的日期,"HH"代表24小时制的小时,"mm"代表分钟,"ss"代表秒。 除了基本的格式字符,`SimpleDateFormat`还支持更复杂的格式,如星期几的完整...
模拟模式显示一个传统的钟面,而数字模式则以24小时制或12小时制显示小时和分钟。在这个demo中,可能包含了这两种模式的实现。 1. **TimePicker的基本使用**: - 创建TimePicker可以通过XML布局文件或代码动态创建...
5. **国际化与本地化**:尽管这里主要显示的是24小时制时间,但Java也支持根据用户的地区设置来显示12小时制或24小时制时间。这可以通过`java.text.SimpleDateFormat`或`java.time.format.DateTimeFormatter`实现。 ...
例如,`"yyyy-MM-dd HH:mm:ss"`表示完整日期加时间的格式,其中`yyyy`代表四位数的年份,`MM`代表两位数的月份,`dd`代表两位数的日期,`HH`代表24小时制的小时数,`mm`代表分钟数,`ss`代表秒数。 #### 3. 示例...