草庐IT

Joda-Money

全部标签

java - JAXB、自定义绑定(bind)、Adapter1.class 和 Joda-time

我对JAXB为XML模式生成绑定(bind)类的方式有疑问(为了精确起见,我无法修改)。我想将xsd:date类型映射到Joda-timeLocalDate对象,并读取here,here和here,我创建了以下DateAdapter类:publicclassDateAdapterextendsXmlAdapter{privatestaticDateTimeFormatterfmt=DateTimeFormat.forPattern("yyyyMMdd");publicLocalDateunmarshal(Stringv)throwsException{returnfmt.parseLo

java - XMLGregorianCalendar 类型的 Joda 日期时间格式

我正在使用JAXB2.2.8-b01impl,我有一个模式,它有一个xs:date元素,它创建一个XMLGregorianCalendar实例。我正在尝试获取Joda-TimeDateTime时间戳格式,但由于我必须有一个XMLGregorianCalendar实例,所以我不确定它是否可行。有什么想法吗?架构XSD:JAXB生成的属性:@XmlSchemaType(name="date")protectedXMLGregorianCalendardate;XML转换类://java.util.DatebeingpassedprivateXMLGregorianCalendarconve

java - Joda Time : First day in this year's ISO week 1

我想找出今年ISO第1周的星期一的日期(对于2009年,这将是2008年12月29日星期一)。我确定joda-time可以处理这个,但我就是想不通API(也许为时已晚)。有人可以帮忙吗?谢谢! 最佳答案 另一个答案中提到的DateMidnightAPI现已弃用,请在下面使用:DateTimedate=newDateTime().dayOfYear().withMinimumValue().withTimeAtStartOfDay(); 关于java-JodaTime:Firstdayin

java - Joda Time - 月份的日期和年份的月份不返回 2 位数字输出

我有以下代码:StringdateUTC="2013-09-08T10:23:54.663-04:00";org.joda.time.DateTimedateTime=newDateTime(dateUTC);System.out.println("Year:"+dateTime.getYear());System.out.println("Month:"+dateTime.getMonthOfYear());System.out.println("Day:"+dateTime.getDayOfMonth());TheOutputofthisprogramis:Year:2013Mon

java - 使用 Joda-Time 获取给定日期和时区的 UTC 偏移量

我有2013年1月20日、2012年8月8日等格式的日期,它们有自己的特定时区。例如,20Jan2013的时区ID可能是Australia/Melbourne,而08Aug2012的时区ID可能是Europe/London。我想要做的是,根据这些时区和日期,计算给定日期该时区的UTC偏移量。到目前为止,我已经想出了这个:DateTimeFormatterdtf=DateTimeFormat.forPattern("ZZ");DateTimeFormatterdtf1=DateTimeFormat.forPattern("ddMMMYYYY");DateTimeZonezone=Date

java - 为什么 Joda 对象是不可变的?

我读到过,Java版本低于7,JodaTime对象比Java的内置对象更可靠。一个引用的原因是Joda对象是不可变的。为什么这是有益的?如果我想更改JodaDateTime对象的年、小时和时区,我需要制作三个副本! 最佳答案 IfIwanttochangetheyear,hour,andtimezoneofaJodaDateTimeobject,Ineedtomakethreecopies!是的,的确如此。当然,您也可以创建一个新对象,使用您喜欢的旧对象中的所有字段。这是一件非常好的事情——因为这意味着当你想依赖一个不变的对象时,它

java - 在 Java Joda Time 中使用 "isBefore"进行仅日期比较

有没有办法只比较具有isBefore函数的DateTime对象的日期?例如,DateTimestart=newDateTime(Long.parseLong());DateTimeend=newDateTime(Long.parseLong());当我这样做的时候,while(start.isBefore(end)){//addstartdatetotheliststart=start.plusDays(1);}这会导致不一致的行为(对于我的场景),因为它也考虑了时间,而我想要的只是使用isBefore比较日期。有什么办法可以做到吗?请告诉我。谢谢! 最佳答

java - 使用 Joda time 获取给定时区的当前挂钟时间

要求是简单地获取给定时区的当前挂钟时间(包括正确的DST调整)。在SO中似乎有几个问题围绕着这个问题徘徊,但我似乎无法找到一个直接的答案(在SO中,Jodadoco或谷歌搜索)以一种低摩擦的方式来获得墙上的时间。似乎有了给定的输入(当前UTC时间和所需的TZ),我应该能够从JodaTime库中链接几个方法来实现我想要的,但在上述示例中似乎希望评估+处理偏移量/应用程序代码中的转换——如果可能的话,我想避免这种情况,只是根据可用的静态TZ规则集使用Jodas的最大努力。为了这个问题的目的,让我们假设我不会使用任何其他第三方服务(基于网络或其他二进制文件),而只是使用JDK和JodaTim

java - 如何将 joda 日期时间转换为字符串,反之亦然

有没有办法将JodaDateTime转换为String,然后从该String转换为DateTime。DateTimed=..;Stringdate=d.toString();DateTimedateTime=DateTime.parse(date);我的问题是上面的方法是否有效或者是否需要使用格式化程序。 最佳答案 试试这个DateTimedt=newDateTime();DateTimeFormatterfmt=DateTimeFormat.forPattern("yyyy-MM-ddHH:mm:ss");StringdtStr=

java - 将 Joda 时间 Instant 转换为 Java 时间 Instant

我有一个Instant(org.joda.time.Instant)的实例,我在一些api响应中得到它。我有另一个来自(java.time.Instant)的实例,这是我从其他调用中获得的。现在,我想比较这两个对象以检查哪一个获得最新的对象。怎么可能? 最佳答案 joda.time的getMillis()可以与java.time的toEpochMilli()进行比较。类文档:org.joda.time.Instant::getMillisjava.time.Instant::toEpochMilli示例代码。java.time.In