- 浏览: 113992 次
- 性别:
- 来自: 郑州
文章分类
最新评论
-
DemonLi:
我来组成点击量
linux 修改时间 ntp同步时间 -
lvinie:
Ray_Mysterio 写道请问一下,我现在安装heartb ...
heartbeat 配置 -
Ray_Mysterio:
请问一下,我现在安装heartbeat的时候出现了一个问题。两 ...
heartbeat 配置 -
Ray_Mysterio:
请问一下,我现在安装heartbeat的时候出现了一个问题。两 ...
heartbeat 配置 -
Ray_Mysterio:
请问一下,我现在安装heartbeat的时候出现了一个问题。两 ...
heartbeat 配置
java 中的时间操作不外乎这四种情况:
1 、获取当前时间
2 、获取某个时间的某种格式
3 、设置时间
4 、时间的运算
好,下面就针对这四种情况,一个一个搞定。
一、获取当前时间
有两种方式可以获得,第一种,使用 Date 类。
j2SE 的包里有两个 Date 类,一个是 java.sql.Date, 一个是 java.util.Date
这里,要使用 java.util.Date 。获取当前时间的代码如下
Date date = new Date(); date.getTime()
;
还有一种方式,使用 System.currentTimeMillis() ;
这两种方式获得的结果是一样的,都是得到一个当前的时间的 long 型的时间的毫秒值,这个值实际上是当前时间值与 1970 年一月一号零时零分零秒相差的毫秒数。
当前的时间得到了,但实际的应用中最后往往不是要用这个 long 型的东西,用户希望得到的往往是一个时间的字符串,比如“ 2006 年 6 月 18 号”,或“ 2006-06-18 ”,老外可能希望得到的是“ 06-18-2006 ”,诸如此类等等。这就是下一个要解决的问题
二、获取某个时间的某种格式
获取时间的格式,需要用到一个专门用于时间格式的类 java.text.SimpleDateFormat 。
首先,定义一个 SimpleDateFormat 变量
SimpleDateFormat sdf = new SimpleDateFormat("",Locale.SIMPLIFIED_CHINESE);
这个构造函数的定义如下:
SimpleDateFormat(String pattern, Locale locale)
第一个参数 pattern ,我们后面再解释,这里我们使用一个 "", 第二个参数,是用来设置时区的,这里用到了 java.util.Locale 这个类,这个类了面定义了很多静态变量,直接拿过来用就 OK ,我们把时区设置为 Locale.SIMPLIFIED_CHINESE ,只看名字,这个静态变量的意义已经很清楚了。
接下来我们使用这个 SimpleDateFormat 把当前时间格式化为一个如下格式的时间字符串“ XXXX 年 XX 月 XX 日 _XX 时 XX 分 XX 秒”,代码:
sdf.applyPattern("yyyy年MM月dd日_HH时mm分ss秒"); String timeStr = sdf.format(new Date());
获取时间格式的函数是 format ,这个函数的参数是 java.util.Date 对象,这个没有什么花头。
要说明一下的是这个 pattern ,所谓的模式。这里, yyyy,MM,dd 等,这就是模式。
我们可以在 SimpleDateFormat 的构造函数中指定模式,比如
SimpleDateFormat sdf = new SimpleDateFormat(" yyyy-MM-dd ",Locale.SIMPLIFIED_CHINESE);
也可以获取时间格式的时候使用applyPattern函数临时指定,上面的例子就是这样。
什么字符代表什么,这是 j2se 约定好的,设置模式的时候,我们可以使用约定好的字符加上任何我们想要的字符串。
j2se 对字符所代表的模式的约定列表如下:
Letter
Date or Time Component
Presentation
G
Era designator
Text
y
Year
Year
M
Month in year
Month
w
Week in year
Number
W
Week in month
Number
D
Day in year
Number
d
Day in month
Number
F
Day of week in month
Number
E
Day in week
Text
a
Am/pm marker
Text
H
Hour in day (0-23)
Number
k
Hour in day (1-24)
Number
K
Hour in am/pm (0-11)
Number
h
Hour in am/pm (1-12)
Number
m
Minute in hour
Number
s
Second in minute
Number
S
Millisecond
Number
z
Time zone
General time zone
Z
Time zone
RFC 822 time zone
三,设置时间
现在设置时间,推荐 使用java.util.Calendar类来进行操作,因为java.util.Date类很多方法都过时了,
Calendar 类有很多重载的设置时间的方法
我们可以针对于某一项进行设置,也可以同时进行很多设置
void
|
set
(int field, int value)
将给定的日历字段设置为给定值。 |
void
|
set
(int year, int month, int date)
设置日历字段 YEAR
、MONTH
和 DAY_OF_MONTH
的值。 |
void
|
set
(int year, int month, int date, int hourOfDay, int minute)
设置日历字段 YEAR
、MONTH
、DAY_OF_MONTH
、HOUR_OF_DAY
和 MINUTE
的值。 |
void
|
set
(int year, int month, int date, int hourOfDay, int minute, int second)
设置字段 YEAR
、MONTH
、DAY_OF_MONTH
、HOUR
、MINUTE
和 SECOND
的值。 |
其中第一个就是给特定的字段设值,后面三个就是针对多个字段赋值
四,时间运算
时间的运算,无外乎就是加加减减,然后比较谁早谁晚而已,这些需求JAVA的API已经帮我们实现的很好了。一般比较时间的可以用如下的方法
abstract void
|
add
(int field, int amount)
根据日历的规则,为给定的日历字段添加或减去指定的时间量。 |
boolean
|
after
(Object
when)
判断此 Calendar
表示的时间是否在指定 Object
表示的时间之后,返回判断结果。 |
boolean
|
before
(Object
when)
判断此 Calendar
表示的时间是否在指定 Object
表示的时间之前,返回判断结果。 |
第一个是给某个字段加上某个数量的时间,虽然这个方法名叫add ,我们要减也是调用它的,只不过我们传入的是负数。
其实JAVA对时间操作的支持还是挺丰富的。希望大家的日常的使用中有更多的发现。
转自:http://www.blogjava.net/hadeslee/archive/2007/09/11/144386.html
发表评论
-
java发送http的get、post请求
2014-05-22 13:41 680package wzh.Http; impor ... -
Java中的instanceof关键字
2012-05-22 09:40 0instanceof是Java的一个二元操作 ... -
实用的工具类
2012-01-16 12:53 1334import java.io.Unsupported ... -
tomcat 最大连接数配置
2011-10-10 13:01 1288server.xml中配置 <Connector ... -
tomcat start stop 脚本
2011-10-05 17:49 2243创建文件tomcat,文件内容如下 [root@ ... -
读取config 工具类
2011-09-05 14:35 1272import java.io.File; import ja ... -
java的System.getProperty()方法可以获取的值
2011-09-05 14:18 646java.version Java ... -
MySql 备份还原常用命令
2011-09-02 11:22 844备份MySQL数据库的命令 mys ... -
struts2的struts.properties配置文件详解
2011-08-13 14:04 870struts.action.extension ... -
java(Web)中相对路径,绝对路径问题总结
2011-08-02 09:39 782前一段时间,由于在处理Web应用下的文件创建与移动 ... -
java中的io系统详解 (转)
2011-08-01 20:24 694Java 流在处理上分为字符流和字节流。字符流处理的 ... -
Struts2配置文件详解——struts-default.xml
2011-07-31 11:55 777<?xml version="1.0" ... -
Struts 2的基石——拦截器(Interceptor)
2011-07-31 10:41 838Interceptor(以下译为拦 ... -
org.springframework.web.util.IntrospectorCleanupListener是什么东东
2011-07-21 19:13 6026看到好多项目的web.xml中都配置了 <listen ... -
PO VO FormBean
2011-04-20 16:13 989概念: PO是持 ... -
ActionForm工作流程
2011-04-20 16:13 1223工作原理: 处理ActionForm的一般步骤: ... -
actionForm声明周期
2011-04-20 16:12 796看了很多的资料书籍,都提了一下ActionForm ... -
EL表达式 js基础
2011-04-20 16:12 1555El表达式 1.EL表达式需要的环境:servlet2.4 ... -
郁闷的 NoSuchMethodError
2011-04-20 16:11 1239最近做程序时 就是自 ... -
servlet 中使用Spring自动注入的bean
2011-04-13 10:49 1771用servlet的时候遇到一个问题,想往servlet中直接注 ...
相关推荐
在Java编程语言中,时间操作是一项关键功能,用于处理日期、时间和时区相关的任务。Java提供了多种类库来处理时间,这些类库随着时间的推移不断进化,从早期的`java.util.Date`和`java.util.Calendar`到更现代的`...
### Java中的时间操作 在Java开发中,时间处理是一项非常重要的功能,特别是在涉及到日期和时间相关的应用程序中。本文将深入探讨Java中关于时间操作的基本概念和技术,并重点介绍四种常见的应用场景:获取当前时间...
在Java编程语言中,经常需要处理日期与时间相关的数据,例如将数字(通常是表示时间戳或特定格式的字符串)转换为更易读的时间格式。这种转换不仅可以帮助我们更好地理解和操作数据,还能增强应用程序的用户友好性。...
在Java编程中,处理日期和时间是常见的需求,尤其是在涉及到数据库操作、文件命名、日志记录等场景时。本文将详细解析如何在Java中进行日期和时间的转换,涵盖从字符串到日期对象的转换,以及反向操作。 #### 一、...
在Java中,虽然操作系统级别的时间片调度是由底层操作系统实现的,但Java虚拟机(JVM)对此有所配合,通过线程调度来模拟时间片的效果。Java的`Thread`类是进行多线程操作的基础,线程的调度策略包括:抢占式调度、...
Java时间转换的应用非常广泛,例如在Web应用程序中,需要将日期和时间转换为字符串,以便在Web页面中显示。又例如在数据库应用程序中,需要将日期和时间转换为字符串,以便存储在数据库中。 Java时间转换的优点是...
### Java时间转换大全 在Java开发中,时间与日期的操作是一项非常常见的需求。尤其是在处理数据库交互、日志记录以及各种业务逻辑中,...在实际开发中,根据具体的应用场景选择合适的方法来进行时间操作是十分重要的。
JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间JAVA 时间 操作 时间
在上述提供的代码段中,我们可以看到几个关于Java时间处理的关键知识点。这些方法主要用于获取当前时间,格式化时间字符串,以及将字符串转换为日期对象。 1. **日期对象创建与获取**:`java.util.Date` 类是Java中...
在上述代码中,`getNowDate()`和`getNowDateShort()`方法中虽然没有直接使用`Calendar`,但可以很容易地通过`Calendar.getInstance()`获取一个`Calendar`实例,然后进行进一步的日期时间操作。 Java 8引入了`java....
在"java 语音合成PCM转MP3"这个主题中,我们需要关注以下几个关键知识点: 1. **Java TTS库**:Java提供了内置的Java Speech API (JSAPI),其中包含Text-to-Speech引擎,如FreeTTS和MaryTTS,可以将文本转化为PCM...
这篇博客“转 Java校正电脑时间(java 时间同步)”主要探讨了如何在Java中实现这一功能。 首先,Java中的日期和时间API包括`java.util.Date`、`java.util.Calendar`,以及从Java 8开始引入的更现代的`java.time`包。...
总之,理解和熟练掌握Java的日期时间操作对于开发人员来说至关重要,无论是在处理用户输入、记录日志还是进行复杂的业务逻辑计算中,都可能需要用到这些功能。通过学习和实践,你可以编写出更加高效和易维护的代码。
### Java时间操作详解 在Java中,时间操作是软件开发中的常见需求,涉及到日期和时间的解析、格式化、计算以及存储。Java提供了多种类库来处理这些需求,包括`java.util.Date`、`java.util.Calendar`、`java.time`...
通过阅读和理解这段代码,你可以更深入地了解Java中的时间转换操作。不过,由于实际代码没有给出,我们只能基于一般情况来讨论这些概念。在实际开发中,确保正确地处理日期和时间,避免出现时区问题,以及有效地进行...
**标题与描述解析** 标题"smali2java——直接将smali转换成java"揭示了本文的核心主题,即一个名为"smali2...尽管在压缩包中的"Smali2Java"可能是工具的可执行文件,实际使用时还需要结合相关文档或说明来正确操作。
本文将详细介绍如何在Java中实现日期与时间的比较,包括使用`SimpleDateFormat`、`Date`、`Calendar`等类进行时间格式化和比较的方法,并通过示例代码展示具体实现过程。 #### 二、使用`SimpleDateFormat`和`Date`...
在Java程序中,你需要监听`process`对象的输入流和错误流,以便获取转换过程中的输出信息和可能出现的错误。 5. 前端页面集成: 转换完成后,前端页面可以通过HTML5的`<video>`标签和`source`标签来播放`M3U8`流...
Java DateUtil.java日期时间操作类源代码,DateUtil类包含了标准的时间和日期格式,以及这些格式在字符串及日期之间转换的方法。比如日期格式转换成时间戳、得到格式化后的系统当前日期、转化日期格式"MM/dd/YY、MM....