相关疑难解决方法(0)

SimpleDateFormat在解析时忽略月份

下面的代码给出了解析日期为"Wed Jan 13 00:00:00 EST 2010"而不是"Wed Jun 13 00:00:00 EST 2010".任何想法都非常感激.

    SimpleDateFormat sf = new SimpleDateFormat("yyyy-mm-dd'T'HH:mm:ss");

    String str = "2010-06-13T00:00:00";

    Date date = sf.parse(str);

    System.out.println(" Date " + date.toString());
Run Code Online (Sandbox Code Playgroud)

java simpledateformat

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

如何将LocalDate对象格式化为MM/dd/yyyy并保持格式化

我正在阅读文本并将日期存储为LocalDate变量.

有没有办法让我保留DateTimeFormatter的格式,这样当我调用LocalDate变量时,它仍然是这种格式.

编辑:我希望parsedDate以25/09/2016的正确格式存储,而不是作为字符串打印

我的代码:

public static void main(String[] args) 
{
    LocalDate date = LocalDate.now();
    DateTimeFormatter formatters = DateTimeFormatter.ofPattern("d/MM/uuuu");
    String text = date.format(formatters);
    LocalDate parsedDate = LocalDate.parse(text, formatters);

    System.out.println("date: " + date); // date: 2016-09-25
    System.out.println("Text format " + text); // Text format 25/09/2016
    System.out.println("parsedDate: " + parsedDate); // parsedDate: 2016-09-25

    // I want the LocalDate parsedDate to be stored as 25/09/2016
}
Run Code Online (Sandbox Code Playgroud)

java formatting parsing localdate

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

向/从SQL数据库(如H2)插入和获取java.time.LocalDate对象

如何通过JDBC插入和获取java.time类型到SQL数据库(如H2数据库引擎)LocalDate

旧的方式使用PreparedStatement::setDateResultSet::getDate工作的遗留java.sql.Date类型.我想避免使用这些麻烦的旧日期时间类.

通过JDBC驱动程序发送java.time类型的现代方法是什么?

java sql date jdbc h2

6
推荐指数
1
解决办法
7430
查看次数

使用SimpleDateFormat.parse时错误的月份

在我的程序中有一个非常奇怪的问题.在这里你可以看到String birthdayLog检查它:

birthday = String.valueOf(birthYear) + "-" + String.valueOf(birthMonth) + "-" + String.valueOf(birthDay);
Log.i(TAG, "Birthday: " + birthday)
Run Code Online (Sandbox Code Playgroud)

然后我把它放到SimpleDateFormat并检查它Log:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");

Date birthDate = sdf.parse(birthday);
Log.i(TAG, "Birth date  : " + birthDate);
Run Code Online (Sandbox Code Playgroud)

然后Logcat我有:

I/App? Birthday: 1999-10-15
I/App? Birth date: Fri Jan 15 00:10:00 GMT+04:00 1999
Run Code Online (Sandbox Code Playgroud)

正如你在日期中看到的那样Jan,但是在字符串中它的10日期应如下所示:

Fri Nov 15 00:10:00 GMT+04:00 1999
Run Code Online (Sandbox Code Playgroud)

我的错误在哪里?

PS我认为我的问题与使用SimpleDateFormat.parse()时获取错误数据有某种联系

java android simpledateformat

3
推荐指数
1
解决办法
3488
查看次数

如何在 java 8 中将 LocalDate 从一种格式转换为另一种 LocalDate 格式而不使用字符串日期?

LocalDate date = LocalDate.now();
System.out.println("date :" + date );//default format is yyyy-MM-dd
System.out.println(date.getClass().getName());//java.time.LocalDate
Run Code Online (Sandbox Code Playgroud)

如何使用format 来格式化 以上date内容。但您可以使用字符串日期模式,即。输出应该只是类型。LocalDatedd-MM-yyyydd-MM-yyyyLocalDate

java string formatting date localdate

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

ZonedDateTime的字符串正在改变格式

String ip="2011-05-01T06:47:35.422-05:00";
ZonedDateTime mzt = ZonedDateTime.parse(ip).toInstant().atZone(ZoneOffset.UTC);
System.out.println(mzt);

System.out.println("-----");

String ip2="2011-05-01T00:00:00.000-05:00";
ZonedDateTime mzt2 = ZonedDateTime.parse(ip2).toInstant().atZone(ZoneOffset.UTC);
System.out.println(mzt2);
Run Code Online (Sandbox Code Playgroud)

输出:

2011-05-01T11:47:35.422Z
-----
2011-05-01T05:00Z
Run Code Online (Sandbox Code Playgroud)

为什么在案例2中更改日期格式?由于这个原因,我收到SQLServer数据库错误.

java date java-8 java-time zoneddatetime

1
推荐指数
1
解决办法
1119
查看次数