使用 Joda-Time,我想显示一个日期列表,这些日期可能有或没有毫秒.如果某个条目有毫秒,那么它应该显示为yyyy MM dd HH:mm:ss.SSS.如果它没有millis,我需要它显示为yyyy MM dd HH:mm:ss.

我想一般的问题是:有没有办法描述可选的格式字符串参数?

(我想避免重构我使用格式化程序的所有地方,因为这是一个很大的代码库.)

解决方法

据我所知,没有可选的模式.但是,我认为你可能会过度思考你的问题.
// Sample variable name - you'd probably name this better.
public static DateTimeFormat LONG_FORMATTER = DateTimeFormatter.forPattern("yyyy MM dd HH:mm:ss.SSS");

// Note that this Could easily take a DateTime directly if that's what you've got.
// Hint hint non-null valid date hint hint.
public static String formatandChopEmptyMilliseconds(final Date nonNullValidDate) {
    final String formattedString = LONG_FORMATTER.print(new DateTime(nonNullValidDate));
    return formattedString.endsWith(".000") ? formattedString.substring(0,formattedString.length() - 4) : formattedString;
}

长度可能不完全适合子串(未经测试的代码),但你明白了.

java – Joda-Time DateFormatter如果非零则显示毫秒的更多相关文章

  1. iOS独立应用程序300毫秒单击延迟

    去年webkitremovedthe350msdelayforiOS.当我在Safari的移动浏览器中运行我的网站时,延迟不再存在,并按预期工作.但是,当我在standalonemode运行我的Web应用程序时,延迟存在,并且显而易见.这是我正在使用的元标记:我尝试了各种各样的变种,没有运气.很难找到关于独立应用程序的任何东西,不过这个明显的问题.有谁知道为什么这个350ms延迟点击只发生在独立模

  2. xcode – Swift计时器,以毫秒为单位

    我想每毫秒更改一次计时器,但它不能按预期工作.结果是计时器在毫秒部分(00:100)中更改为100,然后更改为01:00=40实际秒邓肯方法:结果:456680125.54539第一次打印解决方法正如Martin在评论中所说,定时器的分辨率为50-100毫秒(0.05到0.1秒).尝试运行时间间隔短于此的计时器将无法提供可靠的结果.此外,计时器不是实时的.它们取决于它们所连接的运行循环,如果运行循

  3. iOS:Google Analytics(分析)用户计时报告未在我的Google Analytics(分析)帐户中更新

    我正在尝试使用GoogleAnalytics(分析)跟踪我的应用速度,但是在GoogleAnalytics(分析)帐户中我看不到任何应用程序的速度.我已经跟踪了其他参数,如事件,崩溃和异常.对于这些参数,我可以看到我的Google分析帐户中生成的报告.以下是我用来发送事件时间的代码.以下是控制台中打印的消息.GoogleAnalytics2.0b4-[GAIdispatcherdispatchCo

  4. Swift 获取当前时间戳 (秒级,毫秒级)

    Swift获取当前时间戳经常见到有人将秒级时间戳以Int类型直接*1000来获取毫秒,这样的结果最后的3位数字都是0,获取到的结果不够精确。创建一个Date的Extension,代码如下使用

  5. Android:将日期转换为毫秒

    我用了得到时间,现在我想将这个时间转换为毫秒,因为我有一个带有几个日期和文本的文件,我想以毫秒转换日期,以便我不能添加收件箱中的文字使用因为我必须花费时间以毫秒为单位,我必须转换时间,有谁知道如何?解决方法最简单的方法是将Date类型转换为毫秒:

  6. android – Mapview getLatitudeSpan和getLongitudeSpan无效

    有时,当尝试使用getLatitudeSpan()和getLongitudeSpan()获取mapview的纬度范围或经度范围时,我分别获得0和360*1E6.这不会永远发生,但这是一个问题,有人有这个问题吗?

  7. php生成毫秒时间戳的实例讲解

    下面小编就为大家带来一篇php生成毫秒时间戳的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  8. PHP实现获取毫秒时间戳的方法【使用microtime()函数】

    这篇文章主要介绍了PHP实现获取毫秒时间戳的方法,结合实例形式分析了php使用microtime()函数获取、转换毫秒级时间戳的相关操作技巧,需要的朋友可以参考下

  9. iOS实现毫秒倒计时的方法详解

    倒计时在我们日常开发中必不可少,最近在公司的一个项目中就遇到了这个需求,本文着重介绍的是利用iOS实现毫秒倒计时的方法,文中给出了详细的示例代码,需要的朋友可以参考借鉴,下面来一起学习学习吧。

  10. 使用Windows C中具有毫秒精度和分辨率的时间戳记录

    首先,一些功能:现在,如何使用:请注意,您应该在2-3分钟内重新同步d1和u1一次,以保持准确性.实际上,您可以测量时钟之间的漂移,以找到最佳的重新同步间隔.

随机推荐

  1. 基于EJB技术的商务预订系统的开发

    用EJB结构开发的应用程序是可伸缩的、事务型的、多用户安全的。总的来说,EJB是一个组件事务监控的标准服务器端的组件模型。基于EJB技术的系统结构模型EJB结构是一个服务端组件结构,是一个层次性结构,其结构模型如图1所示。图2:商务预订系统的构架EntityBean是为了现实世界的对象建造的模型,这些对象通常是数据库的一些持久记录。

  2. Java利用POI实现导入导出Excel表格

    这篇文章主要为大家详细介绍了Java利用POI实现导入导出Excel表格,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  3. Mybatis分页插件PageHelper手写实现示例

    这篇文章主要为大家介绍了Mybatis分页插件PageHelper手写实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  4. (jsp/html)网页上嵌入播放器(常用播放器代码整理)

    网页上嵌入播放器,只要在HTML上添加以上代码就OK了,下面整理了一些常用的播放器代码,总有一款适合你,感兴趣的朋友可以参考下哈,希望对你有所帮助

  5. Java 阻塞队列BlockingQueue详解

    本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景,通过实例代码介绍了Java 阻塞队列BlockingQueue的相关知识,需要的朋友可以参考下

  6. Java异常Exception详细讲解

    异常就是不正常,比如当我们身体出现了异常我们会根据身体情况选择喝开水、吃药、看病、等 异常处理方法。 java异常处理机制是我们java语言使用异常处理机制为程序提供了错误处理的能力,程序出现的错误,程序可以安全的退出,以保证程序正常的运行等

  7. Java Bean 作用域及它的几种类型介绍

    这篇文章主要介绍了Java Bean作用域及它的几种类型介绍,Spring框架作为一个管理Bean的IoC容器,那么Bean自然是Spring中的重要资源了,那Bean的作用域又是什么,接下来我们一起进入文章详细学习吧

  8. 面试突击之跨域问题的解决方案详解

    跨域问题本质是浏览器的一种保护机制,它的初衷是为了保证用户的安全,防止恶意网站窃取数据。那怎么解决这个问题呢?接下来我们一起来看

  9. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  10. mybatis-plus雪花算法增强idworker的实现

    今天聊聊在mybatis-plus中引入分布式ID生成框架idworker,进一步增强实现生成分布式唯一ID,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

返回
顶部