前提・実現したいこと
Javaでカウントダウン機能を作成しています
10(分):00(秒):00(ミリ秒)~00(分):00(秒):00(ミリ秒)
まで1ミリ秒単位で時間が減っていくようにしたいのです。
ですが
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("mm:ss.SSS");
LocalDateTime ldtS = LocalDateTime.parse("10:00:00", dtf)
と"10:00:00"を"mm:ss.SSS"の書式で変数ldtSに入れたいのですが
うまくいきません
発生している問題・エラーメッセージ
Exception in thread "main" java.time.format.DateTimeParseException: Text '10:00:000' could not be parsed at index 5
at java.base/java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2046)
at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1948)
at java.base/java.time.LocalDateTime.parse(LocalDateTime.java:492)
at model.CountdownLogic.main(CountdownLogic.java:12)
該当のソースコード
Java
1package model; 2 3import java.time.LocalDateTime; 4import java.time.format.DateTimeFormatter; 5import java.time.temporal.ChronoUnit; 6 7public class CountdownLogic { 8 public static void main(String[] args) { 9 10 DateTimeFormatter dtf = DateTimeFormatter.ofPattern("mm:ss.SSS"); 11 12 LocalDateTime ldtS = LocalDateTime.parse("10:00:000", dtf); 13 14 LocalDateTime end = LocalDateTime.parse("00:00.000", dtf); 15 16 try { 17 LocalDateTime start = ldtS; 18 LocalDateTime decrease; 19 while(!(start.isEqual(end))) { 20 System.out.println(start); 21 decrease = start.minus(1, ChronoUnit.MILLIS); 22 start = decrease; 23 } 24 } catch(Exception e) { 25 e.printStackTrace(); 26 } 27 } 28 }
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/28 07:23