相关疑难解决方法(0)

java.util.Date和getYear()

我在Java中遇到以下问题(我看到有些人在JavaScript中遇到类似问题,但我使用的是Java)

System.out.println(new Date().getYear());
System.out.println(new GregorianCalendar().getTime().getYear());
System.out.println(this.sale.getSaleDate().getYear());
System.out.println(this.sale.getSaleDate().getMonth());
System.out.println(this.sale.getSaleDate().getDate());
Run Code Online (Sandbox Code Playgroud)

回报

I/System.out( 4274): 112
I/System.out( 4274): 112
I/System.out( 4274): 112
I/System.out( 4274): 1
I/System.out( 4274): 11
Run Code Online (Sandbox Code Playgroud)

我不明白我认为2012年的112位.发生了什么事?是 java.util.Date类不可用?我将其作为一个字段存储在我的几个类中以存储日期和时间.我该怎么办?

java date

52
推荐指数
9
解决办法
22万
查看次数

51
推荐指数
4
解决办法
19万
查看次数

如何在java中将时间缩短到最接近的四分之一小时?

鉴于今天的时间,例如下午2:24,如何让它到下午2:30?

同样,如果时间是下午2:17,我如何让它到下午2:15?

java

51
推荐指数
6
解决办法
5万
查看次数

如何将Joda Localdate转换为Joda DateTime?

我想在执行更多计算之前简单地将TimeZone信息添加回LocalDate.LocalDate来自使用ObjectLab LocalDateCalculator为现有DateTime添加天数,但该方法需要返回一个修改后的ReadableInstant以形成一个Interval,然后我可以检查它.

我正在尝试的代码相当于将Joda LocalDate转换为Joda DateTime:

LocalDate contextLocalBusinessDate = calculator.getCurrentBusinessDate();
DateTime businessDateAsInContextLocation = new DateTime(contextLocalBusinessDate, contextTimeZone);
Run Code Online (Sandbox Code Playgroud)

我得到的错误来自Joda的转换系统:

java.lang.IllegalArgumentException: No instant converter found for type: org.joda.time.LocalDate
        at org.joda.time.convert.ConverterManager.getInstantConverter(ConverterManager.java:165)
        at org.joda.time.base.BaseDateTime.<init>(BaseDateTime.java:147)
        at org.joda.time.DateTime.<init>(DateTime.java:192)
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个解决此问题的方法,或者一种解决方法,可以获得具有完整时区信息的准确间隔.

java timezone jodatime

51
推荐指数
1
解决办法
5万
查看次数

从TimeZone获取TimeZone偏移值而不使用TimeZone名称

我需要以[+/-] hh:mm格式保存手机的时区

我正在使用TimeZone类来处理这个问题,但我能得到的唯一格式如下:

PST -05:00
GMT +02:00
Run Code Online (Sandbox Code Playgroud)

我宁愿不对结果进行子串,是否有任何键或选项标志我可以设置为只获取值而不是该时区的名称(GMT/CET/PST ...)?

java timezone

51
推荐指数
6
解决办法
11万
查看次数

基于android上的用户区域设置的日期格式

我想根据用户区域设置显示出生日期.在我的应用程序中,我的一个字段是出生日期,目前是格式dd/mm/yyyy.因此,如果用户更改其区域设置,则日期格式也应相应更改.任何指针或代码示例都会帮助我克服这个问题.

android date-format internationalization

50
推荐指数
5
解决办法
5万
查看次数

将DAY_OF_MONTH或DAY_OF_YEAR添加到Calendar对象之间有什么区别?

我想将某个日期增加1天.我创建一个Calendar对象,如:

Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, 2012);
cal.set(Calendar.MONTH, 0);
cal.set(Calendar.DAY_OF_MONTH, 31);
Run Code Online (Sandbox Code Playgroud)

然后,为了增加它1天,我可以做两件事:

cal.add(Calendar.DAY_OF_MONTH, 1);
Run Code Online (Sandbox Code Playgroud)

要么

cal.add(Calendar.DAY_OF_YEAR, 1);
Run Code Online (Sandbox Code Playgroud)

还有其他"DAY"常量,但是我使用上述两种增加1的方法得到相同的结果.在这种情况下,我会得到两个不同的结果吗?

java datetime

50
推荐指数
5
解决办法
5万
查看次数

如何在Java中获取时区的当前日期和时间?

我的应用程序托管在伦敦服务器中.我在西班牙马德里.所以时区是-2小时.

如何获取我的时区的当前日期/时间.

Date curr_date = new Date(System.currentTimeMillis());
Run Code Online (Sandbox Code Playgroud)

例如

Date curr_date = new Date(System.currentTimeMillis("MAD_TIMEZONE"));
Run Code Online (Sandbox Code Playgroud)

随着Joda-Time

DateTimeZone zone = DateTimeZone.forID("Europe/Madrid");
DateTime dt = new DateTime(zone);
int day = dt.getDayOfMonth();
int year = dt.getYear();
int month = dt.getMonthOfYear();
int hours = dt.getHourOfDay();
int minutes = dt.getMinuteOfHour();
Run Code Online (Sandbox Code Playgroud)

java timezone jodatime

49
推荐指数
4
解决办法
20万
查看次数

以java.sql.Date格式获取当前日期

我需要将当前日期添加到JDBC调用的预准备语句中.我需要以类似的格式添加日期yyyy/MM/dd.

我试过了

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");
Date date = new Date();
pstm.setDate(6, (java.sql.Date) date);
Run Code Online (Sandbox Code Playgroud)

但我有这个错误:

threw exception
java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date
Run Code Online (Sandbox Code Playgroud)

有没有办法获得java.sql.Date具有相同格式的对象?

java jdbc java.util.date

49
推荐指数
5
解决办法
18万
查看次数

EST与America/New_York时区的差异

有人可以告诉我,以下两个陈述之间的区别是什么:

TimeZone.getTimeZone("America/New_York")
Run Code Online (Sandbox Code Playgroud)

TimeZone.getTimeZone("EST")
Run Code Online (Sandbox Code Playgroud)

换句话说,为什么EST与America/New_York不同.同样在我的应用程序中,要获得美国当前时区,我应该使用America/New_York还是EST.

java timezone calendar

48
推荐指数
3
解决办法
5万
查看次数