共享一下前几天整理的java时间工具类
1 import java.io.PrintStream;
2 import java.sql.Time;
3 import java.sql.Timestamp;
4 import java.text.ParsePosition;
5 import java.text.SimpleDateFormat;
6 import java.util.Date;
7 public class TimeUtil
8 {
9 /*
10 * www.pmjava.com java编程
11 */
12 public TimeUtil()
13 {
14 }
15 public static Date strToDate(String sStr)
16 {
17 if (sStr == null)
18 return null;
19 SimpleDateFormat formatter;
20 if (sStr.length() == 19)
21 formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
22 else
23 if (sStr.length() == 10)
24 formatter = new SimpleDateFormat("yyyy-MM-dd");
25 else
26 if (sStr.length() == 8)
27 formatter = new SimpleDateFormat("yyyyMMdd");
28 else
29 if (sStr.length() == 14)
30 formatter = new SimpleDateFormat("yyyyMMddHHmmss");
31 else
32 formatter = new SimpleDateFormat("yyyyMMddHHmmss");
33 ParsePosition pos = new ParsePosition(0);
34 return formatter.parse(sStr, pos);
35 }
36 public static Timestamp strToDatetime(String s)
37 {
38 return new Timestamp(strToDate(s).getTime());
39 }
40 public static String datetimeToChinese(Date dtSource)
41 {
42 SimpleDateFormat formatter = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");
43 return formatter.format(dtSource);
44 }
45 public static String dateToStr(Date date)
46 {
47 SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
48 return format.format(date);
49 }
50 public static String datetimeToStr(Date date)
51 {
52 if (date == null)
53 {
54 return "";
55 } else
56 {
57 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
58 return formatter.format(date);
59 }
60 }
61 public static String today()
62 {
63 return dateToStr(new Date());
64 }
65 public static String now()
66 {
67 return datetimeToStr(new Date());
68 }
69 public static String calcTime(String time, int diffYear, int diffMonth, int diffDate, int diffHour, int diffMinute, int diffSecond)
70 {
71 Timestamp timestamp = strToDatetime(time);
72 timestamp.setYear(timestamp.getYear() + diffYear);
73 timestamp.setMonth(timestamp.getMonth() + diffMonth);
74 timestamp.setDate(timestamp.getDate() + diffDate);
75 timestamp.setHours(timestamp.getHours() + diffHour);
76 timestamp.setMinutes(timestamp.getMinutes() + diffMinute);
77 timestamp.setSeconds(timestamp.getSeconds() + diffSecond);
78 return datetimeToStr(timestamp);
79 }
80 public static String getCurrentTime()
81 {
82 String s = (new Time(System.currentTimeMillis())).toString();
83 return s;
84 }
85 public static String getCurrentDate()
86 {
87 String s = (new java.sql.Date(System.currentTimeMillis())).toString();
88 return s;
89 }
90 public static String getCurrentNow()
91 {
92 String s = getCurrentDate() + " " + getCurrentTime();
93 return s;
94 }
95 public static String dateFromStr(String date)
96 {
97 if (date == null || date.length() < 10)
98 return getCurrentDate();
99 else
100 return date.substring(0, 10);
101 }
102 public static String timeFromStr(String date)
103 {
104 if (date == null || date.length() < 19)
105 return "00:00:00";
106 else
107 return date.substring(11, 19);
108 }
109 public static void main(String args[])
110 {
111 System.out.println(now());
112 }
113 }
分享到:
相关推荐
Java编程语言是软件开发领域广泛使用的工具,尤其适合构建企业级应用、移动应用以及服务器端逻辑。本教程“JAVA新手学习教程--ch1”旨在帮助初学者迈入Java的世界,第一章通常会涵盖基础概念和环境搭建。 在Java的...
- **并发工具类**:如 ExecutorService、Semaphore 等。 - **线程安全问题**:避免共享可变状态导致的问题。 ##### 3. Java I/O 编程 - **文件读写**:FileInputStream、FileOutputStream。 - **缓冲流**:...
根据提供的文件信息,我们可以推断出这是一本关于Java 7编程的学习资料——《新手学Java 7编程(第5版)》。虽然提供的具体内容部分非常有限,但从书名、描述及标签中,我们可以总结出一些重要的Java 7编程相关的...
1. Java语言简介:介绍Java的历史、特性和重要性。 2. 基本数据类型和数组:学习Java中的基本数据类型(如整型、浮点型、字符型和布尔型)以及如何使用数组存储和操作数据。 3. 运算符、表达式和语句:掌握各种...
10. **Java标准库**:Java标准库(Java API)包含大量预先定义好的类和接口,如用于数学运算的Math类,日期时间处理的Calendar类,XML解析的DOM和SAX库等。 11. **JDBC(Java Database Connectivity)**:Java通过...
这些工具类集合旨在覆盖开发过程中的各种常见需求,尤其对于Java新手来说,它们可以降低学习曲线,提高开发效率。在实际项目中,根据具体需求选择合适的工具类进行集成,能够快速实现功能,同时保持代码的整洁和可...
一个Java+ajax写的登录实例,附有JAVA源文件,JAVA新手朋友可以学习一下。 JAVA+JSP的聊天室 8个目标文件 简单 JavaScript万年历 显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一...
Java的基础知识包括语法、类、对象、接口、包、异常处理、输入/输出流等,对于初学者来说,理解和掌握这些概念至关重要。 1. **Java语法**:Java的语法与C++类似,但更简洁。它包含变量声明、数据类型(如整型、...
综上所述,这个压缩包包含了一个用于与AIP接口交互的Java SDK,版本为4.2.0,同时提供了日志记录工具Log4j和JSON处理库,适合Java开发者,尤其是初学者,用于学习和开发基于AIP的服务。使用者可以通过这个SDK轻松地...
### Java新手学习手册知识点梳理 #### 一、Java基础概念 - **面向对象特性**: - Java是一种完全面向对象的编程语言,强调一切皆对象。这意味着所有的数据和功能都需要封装在类中,不可直接在类之外定义独立的...
本教程“Java入门之Java2-3-4”是针对初学者精心设计的,旨在帮助新手快速掌握Java的基础知识和核心概念。 首先,我们来探讨Java2的部分,这是Java的一个重要阶段,它包含了Java Standard Edition(Java SE)的第二...
第二十一至二十五章可能包括网络编程、数据库连接(JDBC)和Java Swing或JavaFX(用于创建桌面应用程序的GUI工具包)。这些章节将让你了解如何利用Java进行网络通信和构建用户界面,扩展了Java开发的领域。 每章的...
JAVA类查找工具是一款专为Java开发者设计的实用软件,它能帮助用户快速定位并查找Java类,无论是存在于JAR文件还是ZIP文件中。这个工具极大地方便了开发过程中的代码管理和调试,尤其当项目庞大,类库众多时,它的...
在Linux环境下,Java 8 OpenJDK AMD64 的安装和使用对于开发者来说至关重要,因为Java是许多服务器端应用、Web应用和大数据处理工具的基础。OpenJDK 8提供了Java SE(标准版)8的所有功能,包括Lambda表达式、Stream...
- **异常处理**:Java提供了异常处理机制,帮助开发者捕获和处理程序运行时可能出现的错误。 - **集合框架**:包括ArrayList、LinkedList、HashMap等,是存储和操作数据的重要工具。 - **输入/输出**:Java的IO流库...
### 新手零基础学习Java知识点概述 对于新手而言,零基础入门Java可能是一个充满挑战的过程。但是通过系统的学习路径和合适的学习资源,可以逐步掌握这门语言的核心概念和技术要点。以下将详细介绍Java的基础知识、...
【Java学习路线1】是一条全面且最新的Java学习路径,旨在帮助从新手到专业人士的全程进阶。这个路线特别适合那些希望全面学习Java或者迅速准备求职的人,他们可以根据路线中的符号自定义学习路径。 路线特点: 1. *...
书中的内容将帮助读者理解线程同步、死锁以及并发工具类(如Semaphore、CountDownLatch)的使用。 6. **I/O与NIO**:Java的I/O流系统是处理输入输出的重要部分,而NIO(New Input/Output)提供了一种更高效的数据...