在项目中经常用到SimpleDateFormat,从未出过错!
今天发现了一个奇怪的问题,一个一直正常运行的线上服务,突然在今天日志时间记录超前了1小时,奇怪啊!找到该项目源码,测试了一下,的确时间超前了一个小时。明明现在是10:15分,格式化出来却是11:15分。同样的测试代码【main方法】拷到别的机器运行正常。在本机直接打印new Date()时间正常。说明是格式化时间(SimpleDateFormat)出错了,可是之前一直都没错过啊,SimpleDateFormat绝对不会出现这种错误的。无奈啊,现在确实是出错了,那就看看SimpleDateFormat吧!回到头部一看傻眼了,头部引入的是icu4j-2.6.1.jar包中的:
import com.ibm.icu.text.SimpleDateFormat;
貌似不是我们经常用的:
import java.text.SimpleDateFormat;
(rt.jar包)难道是这里错了。
带着将信将疑我们换成了“import java.text.SimpleDateFormat;”,果然,结果正确了。也不知道当初是否受到“ibm”字眼的影响,错误的选择了这个。稍后有时间研究一下ibm这个类吧。哎,留下此文以作纪念吧。
分享到:
相关推荐
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); date.setTime(time); System.out.println(sdf.format(date)); 发现时间于想要的时间不符,请运行Time.reg文件
例如,我们可以使用`Calendar.add()`方法增加日期,再用`SimpleDateFormat.format()`方法输出格式化的日期。 下面是一个简单的示例,展示了如何使用`SimpleDateFormat`和`Calendar`: ```java import java.text....
计算机后端-Java-Java核心基础-第22章 常用类 10. SimpleDateFormat的使用.avi
SimpleDateFormat 的继承关系是:java.lang.Object -> java.text.Format -> java.text.DateFormat -> java.text.SimpleDateFormat。 SimpleDateFormat 的功能 SimpleDateFormat 允许以用户指定的方式格式化日期和...
计算机后端-Java-Java核心基础-第22章 常用类 12. SimpleDateFormat的课后练习2.avi
计算机后端-Java-Java核心基础-第22章 常用类 11. SimpleDateFormat的课后练习1.avi
System.out.println(simpleDateFormat.format(date)); } }); } } } ② 使用 synchronized 加锁执行 当多个线程共享同一个 SimpleDateFormat 实例时,可以通过 synchronized 关键字进行加锁,确保同一时刻只有...
SimpleDateFormat 的继承关系是:java.lang.Object -> java.text.Format -> java.text.DateFormat -> java.text.SimpleDateFormat。SimpleDateFormat 的主要功能是格式化日期和时间,使其以用户指定的方式展示出来。...
`SimpleDateFormat.js`这个文件很可能包含了上述`SimpleDateFormat`类的完整实现,包括对各种日期格式的支持,如年、月、日、小时、分钟、秒等,并且处理了闰年、时区等复杂情况。在实际使用中,你可以这样使用它: ...
开发者可以使用Android SDK提供的`java.text`包,间接调用ICU的功能,如`SimpleDateFormat`用于日期和时间格式化,`DecimalFormat`用于数字格式化,`Collator`进行文本比较等。 **5. 自定义构建:** 对于有特殊需求...
NULL 博文链接:https://chaoyi.iteye.com/blog/2082317
`SimpleDateFormat` 类位于 `java.text` 包下,它的主要功能是将日期和时间对象转换为字符串,或者将字符串解析为日期和时间对象。我们可以通过构造函数创建一个 `SimpleDateFormat` 实例,并传入一个模式字符串来...
### SimpleDateFormat的常用方法说明 #### 一、简介 `SimpleDateFormat`是Java中用于格式化日期和时间的一个类。它允许我们自定义日期/时间的显示格式,这在实际开发中非常有用,尤其是在处理不同地区或语言环境下...
SimpleDateFormat类的线程安全问题和解决方案 SimpleDateFormat类的线程安全问题 SimpleDateFormat类是Java提供的日期时间转化类,用于将日期和时间类型的数据进行解析和格式化。在Java开发中,SimpleDateFormat类...
import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 日期时间类 * Created by hssboy on 2016/10/15. */ public class DateUtil { public static Date getDate() {...
import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.util.HSSFColor; import org.apache.poi.ss....
SimpleDateFormat是java.text包下的一个具体类,用于格式化和解析日期。它可以将Date对象转换为字符串,也可以将字符串解析为Date对象。例如,如果你想要将日期格式化为"yyyy-MM-dd"格式,你可以这样做: ```java ...
`SimpleDateFormat`是`java.text.SimpleDateFormat`类的一个实例,它实现了`Format`接口,用于日期和时间的格式化与解析。这个类提供了灵活的日期和时间模式字符串,以便定制日期和时间的显示格式。 2. **模式字符...
1.创建SimpleDateFormat对象,确定日期被格式化的格式 2.使用循环,在循环中调用Thread的sleep方法,让线程休眠1s后打印当前时间的字符串
在Java编程中,`ParseException` 是 `java.text.ParseException` 类的一个异常,通常在尝试解析日期或时间字符串时遇到无法解析的格式时抛出。在给定的标题 "java.text.ParseException: Unparseable date: 2/10/2010...