Home > Java > javaTutorial > Why Does SimpleDateFormat Incorrectly Parse Dates in the \'YYYY-MM-dd HH:mm\' Format, and How Can This Issue Be Resolved?

Why Does SimpleDateFormat Incorrectly Parse Dates in the \'YYYY-MM-dd HH:mm\' Format, and How Can This Issue Be Resolved?

Mary-Kate Olsen
Release: 2024-11-03 00:07:30
Original
940 people have browsed it

Why Does SimpleDateFormat Incorrectly Parse Dates in the

Parsing Date and Time in "YYYY-MM-dd HH:mm" Format Using SimpleDateFormat

Problem Introduction:

When attempting to parse a String in the "YYYY-MM-dd HH:mm" format using SimpleDateFormat, users may encounter incorrect date and time outcomes. Specifically, the parsed date may not match the expected date.

Question:

Why does SimpleDateFormat incorrectly parse dates in the "YYYY-MM-dd HH:mm" format? How can this issue be resolved?

Answer:

SimpleDateFormat uses case-sensitive pattern letters to parse input strings. For the year format, "YYYY" represents the full year with leading zeros, while lowercase "yyyy" represents the year without leading zeros. In the provided code, the pattern letter "YYYY" was incorrectly used, leading to unexpected date parsing.

Solution:

To correctly parse the date and time, use lowercase "yyyy" in the pattern:

<code class="java">SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.ENGLISH);</code>
Copy after login

With this correction, the code will parse dates in the expected format without any issues.

Additional Considerations:

When using SimpleDateFormat, carefully check the pattern letters to ensure they match the desired format. Refer to the Java API documentation for a complete list of pattern letters and their corresponding date/time formats.

Database Update:

Regarding the issue where time is reset to 00:00 when updating a date in a database, ensure that the database column datatype and the Java date object's time component are compatible. If the database column only stores the date, the time component in the Java object will be ignored upon insertion.

The above is the detailed content of Why Does SimpleDateFormat Incorrectly Parse Dates in the \'YYYY-MM-dd HH:mm\' Format, and How Can This Issue Be Resolved?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template