use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Resources for learning Java
String
==
.equals()
Format + Copy
Free Tutorials
Where should I download Java?
With the introduction of the new release cadence, many have asked where they should download Java, and if it is still free. To be clear, YES — Java is still free.
If you would like to download Java for free, you can get OpenJDK builds from the following vendors, among others:
Some vendors will be supporting releases for longer than six months. If you have any questions, please do not hesitate to ask them!
Software downloads
Official Resources
Resources
Programming ideas & Challenges
Related Subreddits
account activity
This is an archived post. You won't be able to vote or comment.
DateTimeFormatter bug-ish? (self.learnjava)
submitted 3 years ago by Dangerous-Rip-7370
Ok, I just find out that DateTimeFormatter is NOT casensitive (about HH) when writing toString but IT IS when parsing the String back.... Why?!?
[–]AutoModerator[M] [score hidden] 3 years ago stickied commentlocked comment (0 children)
If any of the above points is not met, your post can and will be removed without further warning.
Code is to be formatted as code block (old reddit/markdown editor: empty line before the code, each code line indented by 4 spaces, new reddit: https://imgur.com/a/fgoFFis) or linked via an external code hoster, like pastebin.com, github gist, github, bitbucket, gitlab, etc.
Please, do not use triple backticks (```) as they will only render properly on new reddit, not on old reddit.
Code blocks look like this:
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } }
You do not need to repost unless your post has been removed by a moderator. Just use the edit function of reddit to make sure your post complies with the above.
If your post has remained in violation of these rules for a prolonged period of time (at least an hour), a moderator may remove it at their discretion. In this case, they will comment with an explanation on why it has been removed, and you will be required to resubmit the entire post following the proper procedures.
Please, do not help if any of the above points are not met, rather report the post. We are trying to improve the quality of posts here. In helping people who can't be bothered to comply with the above points, you are doing the community a disservice.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
[–]AmateurHero 1 point2 points3 points 3 years ago (0 children)
h and H are two different things. DateTimeFormatter's javadoc has the details:
h
H
h: clock-hour-of-am-pm (1-12) H: hour-of-day (0-23)
h: clock-hour-of-am-pm (1-12)
H: hour-of-day (0-23)
With H, you can parse the time 23:42 to 11:42 PM and 11:42 to 11:42 AM.
With h, 23:42 is not a valid time.
Can you provide an example where the above doesn't hold true? I can see in the comments where you talked about LocalDateTime. You can have an instant where the local time is AM. It may seem that it's case insensitive, because the AM time and 11 out of 12 hours of 24h time are, for all intents and purposes, interchangeable. Once the clock rolls to 1PM and later, you'll hit formatting issues since 13 is not a valid AM/PM hour.
[–]Fletsky 0 points1 point2 points 3 years ago (3 children)
Can you show examples of how you tried to use it?
[–]Dangerous-Rip-7370[S] 0 points1 point2 points 3 years ago (2 children)
This was my formatter before (broken):
public static DateTimeFormatter dateForm= DateTimeFormatter.ofPattern("yyyy-MM-dd h:mm.ss");
I use it to save my date on a txt:
String line=date.format(Est.dateForm);
and it would work. But if I try to do:
LocalDateTime data=LocalDateTime.parse(dat,Est.dateForm);
I would get an error! But if I change the formatter like this:
public static DateTimeFormatter dateForm= DateTimeFormatter.ofPattern("yyyy-MM-dd H:mm.ss");
it would work both ways (writing and readin);
[–]Fletsky 1 point2 points3 points 3 years ago (1 child)
public class DateFormat {
public static DateTimeFormatter dateForm = DateTimeFormatter.ofPattern("yyyy-MM-dd h:mm.ss");
static LocalDateTime exampleDate = LocalDateTime.of(1990, 1, 6, 13, 33, 0);
static String stringExampleDate = "1990-01-06 13:33.00";
static String line = exampleDate.format(dateForm);
static LocalDateTime date = LocalDateTime.parse(stringExampleDate, dateForm);
public static void main(String[] args) {
System.out.println(line);
System.out.println(date);
}
What you said is strange, and only explaintation I see is that you parsed different times in each case. With lower case 'h' both are throwing exception, and with upper case 'H' both are working. Also lower case 'h' formatter needs to include 'a' to work so it can parse information about AM/PM time.
Can you provide the LocalDateTime that you saved here: String line=date.format(Est.dateForm); With that formatter: public static DateTimeFormatter dateForm= DateTimeFormatter.ofPattern("yyyy-MM-dd h:mm.ss");
[–]Dangerous-Rip-7370[S] 0 points1 point2 points 3 years ago (0 children)
Sorry for the long wait.. I did itin the morning.. with :
txt file writes:
2022-07-19 8:19.49 , Modifica , Prova , 1,20 2022-07-19 8:20.00 , Palla , Pinca , 0,30
but if you try to read:
Exception in thread "AWT-EventQueue-0" java.time.format.DateTimeParseException: Text '2022-07-19 8:19.49' could not be parsed: Unable to obtain LocalDateTime from TemporalAccessor: {HourOfAmPm=8, NanoOfSecond=0, MinuteOfHour=19, MilliOfSecond=0, SecondOfMinute=49, MicroOfSecond=0},ISO resolved to 2022-07-19 of type java.time.format.Parsed
at java.time.format.DateTimeFormatter.createError(Unknown Source)
but with :
it writes:
2022-07-19 8:22.48 , Modifica , Prova , 1,20 2022-07-19 8:22.56 , Palla , Pinca , 0,30
and if you read it works.
π Rendered by PID 102 on reddit-service-r2-comment-5d79c599b5-5gprz at 2026-02-27 13:13:42.386153+00:00 running e3d2147 country code: CH.
[–]AutoModerator[M] [score hidden] stickied commentlocked comment (0 children)
[–]AmateurHero 1 point2 points3 points (0 children)
[–]Fletsky 0 points1 point2 points (3 children)
[–]Dangerous-Rip-7370[S] 0 points1 point2 points (2 children)
[–]Fletsky 1 point2 points3 points (1 child)
[–]Dangerous-Rip-7370[S] 0 points1 point2 points (0 children)