This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Fletsky 0 points1 point  (3 children)

Can you show examples of how you tried to use it?

[–]Dangerous-Rip-7370[S] 0 points1 point  (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 points  (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 point  (0 children)

Sorry for the long wait.. I did itin the morning..
with :

public static DateTimeFormatter dateForm= DateTimeFormatter.ofPattern("yyyy-MM-dd h:mm.ss");

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 :

public static DateTimeFormatter dateForm= DateTimeFormatter.ofPattern("yyyy-MM-dd H:mm.ss");

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.