java 日期 纳秒_java – 具有纳秒的字符串日期转换
我已经用这段代码为Android应用程序挣扎了一段时间,我无法理解它.我已经阅读并尝试了我在stackoverflow和其他地方找到的每个解决方案,但仍然没有运气.
我想要做的是有一个函数将像“17.08.2012 05:35:19:7600000”这样的字符串转换为UTC日期和一个接受UTC日期并将其转换为类似字符串的函数.
String value = "17.08.2012 05:35:19:7600000";
DateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss:SSSSSSS");
try
{
Date today = df.parse(value);
System.out.println("Today = " + df.format(today) + " " + today.toGMTString());
}
catch (ParseException e)
{
e.printStackTrace();
}
结果如下:今天= 17.08.2012 07:41:59:0000000 2012年8月17日04:41:59 GMT这两个都是错的.
我尝试将SDF的时区设置为UTC,没有运气.
我注意到的另一件事:如果我做df.setLenient(false);
它给了我:java.text.ParseException:Unparseable date:“17.08.2012 05:35:19:7600000”.
如果有人能提供一些解释/示例代码,我将非常感激.提前致谢
解决方法:
你得到的结果是绝对正确的.
我们来分析一下:
17.08.2012 05:35:19:7600000
> 17:月份(17日)
> 08:一年中的月份(八月)
> 2012年:年(2012年)
> 05:一天中的小时(早上5点)
> 35:一小时(:35)
> 19:分秒(:19)
> 7600000:毫秒秒(7,600,000)
现在,VM看到这种情况的方式是你将时间宣布为5:35:19 am,然后再添加7,600,000毫秒. 7,600,000毫秒= 7,600秒= 2小时6分40秒.凌晨5:35:19 02:06:40 = 7:41:59(和0毫秒).这是你得到的结果. (您似乎没有正确设置时区,因此GMT字符串比您的结果落后3小时.)
如果你想保留:7600000,据我所知这是不可能的.由于这可以简化为几秒钟,因此VM会自动将其减少到其他时间增量.毫秒(SSSS)应该用于存储值<1000.
我建议你为你的输出创建一个新的SimpleDateFormat;但要记住,毫秒将被吸收到其他时间(因为它们都被存储为Date对象中的一个long).
标签:date-parsing,android,java,simpledateformat,datetime-format
来源: https://codeday.me/bug/20190923/1815608.html
java 日期 纳秒_java – 具有纳秒的字符串日期转换相关推荐
- java 和mysql 时间_java和mysql之间的时间日期类型传递
mysql(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59: ...
- java service层 事务_Java高并发秒时啊API之Service层1
---2-1 使用Spring托管Service依赖理论---------------------------- spring ioc优势(工厂模式): 1.对象创建统一托管 2.规范的生命周期管理 ...
- java延迟1秒_java 等待一秒方法
t.sleep(1000); 这个实际是主线程调用t的方法,本来就不科学,(在a线程里调用了b的sleep方法,实际上还是a去睡觉) t = new Thread(this); 不清楚这个类是Thre ...
- java时间日期格式器_JAVA基础类库(二)-----日期、时间类和格式器
Date类 public classDateTest{public static voidmain(String[] args){ Date d1= newDate();//获取当前时间之后100ms ...
- java 判断时间合法_java 中 Date 类型快判断日期是否合法.
// 如果日期不合法,则抛异常 try { String date_str = "5555-22-33"; SimpleDateFormat format=new SimpleDa ...
- java 日期是否合法_java 中 Date 类型快判断日期是否合法.
// 如果日期不合法,则抛异常try {String date_str = 5555-22-33;SimpleDateFormat format=new SimpleDateFormat(yyyy-M ...
- java 日期格式化 英文_Java中使用SimpleDateFormat输出英文日期(原创)
Java中使用SimpleDateFormat输出英文日期(原创) 由萱萱 发表于2013-12-14 如果你想输出英文日期,形如: September 29, 2013 可以借助java.text. ...
- java时间解析错误_java.lang.IllegalArgumentException:解析错误-日期格式错误?
我正在使用变量CURRENT_DATE将当前日期存储在SQLite数据库中.我发现使用的日期格式是yyyy-mm-dd.我想解析代码中的日期,但出现此错误: java.lang.IllegalArgu ...
- java 获取est时间_java – 在EST时区获取XMLGregorianCalendar日期
我正在使用TimeZone.setDefault(TimeZone.getTimeZone("EST"));获得EST时区,它对我来说很好.但是有时候由于默认的JVM时区没有人在我 ...
最新文章
- 慎用Outline ,UGUI Outline实现原理分析
- PInvoke调用导致堆栈不对称
- Linux Mysql 1130错误解决
- OS / Linux / 系统阻塞在系统调用中时如果收到信号,系统如何处理?
- day 012 生成器 与 列表推导式
- Js 怎么遍历json对象所有key及根据动态key获取值(根据key值获取相应的value值)...
- 《智能家居产品 从设计到运营》——2.2 智能设备的触角:传感器
- 批量修改喜马拉雅下载节目的文件名
- 莫烦 pytorch
- 指纹识别算法MZFinger5.0
- Yii Zii组件 CGridView 使用详解
- 安卓海豚wii模拟器_dolphin模拟器安卓版
- RPA学习天地:艺赛旗RPA机器人的4种类型和区别介绍
- 【HTML5】HTML5
- 服务器遇到攻击了,有什么好的安全解决方案
- 函数,主函数,被调用函数,库函数。
- GPT-3让人怀疑人生!惊艳了世界!道翰天琼认知智能机器人api接口平台为您解密!
- 【汇总】行为识别、时序行为检测、弱监督行为检测、时空行为定位论文代码(持续更新!!!)
- 小熊电器失宠,小家电市场不背锅
- 【软考备战·希赛网每日一练】2023年4月13日