[Fix] java.time.zone.ZoneRulesException: Unknown time-zone ID


Java Unknown time-zone ID Error
Exception in thread "main"
        java.time.zone.ZoneRulesException: Unknown time-zone ID: America/NewYork
	at java.base/java.time.zone.ZoneRulesProvider.getProvider(ZoneRulesProvider.java:279)
	at java.base/java.time.zone.ZoneRulesProvider.getRules(ZoneRulesProvider.java:234)
	at java.base/java.time.ZoneRegion.ofId(ZoneRegion.java:120)
	at java.base/java.time.ZoneId.of(ZoneId.java:408)
	at java.base/java.time.ZoneId.of(ZoneId.java:356)
	at org.code2care.Java8AddDaysToDate.main(Java8AddDaysToDate.java:18)

If you get ZoneRulesException runtime exception with message Unknown time-zone ID, that's because you have passed the unknown or incorrect city/country timezone string.

Instant now = Instant.now();
ZonedDateTime zdt = ZonedDateTime.ofInstant(now, ZoneId.of("America/NewYork"));
System.out.println(zdt);

Fix:

In the above example, the NewYork string should be New_York

Instant now = Instant.now();
ZonedDateTime zdt = ZonedDateTime.ofInstant(now, ZoneId.of("America/New_York"));
System.out.println(zdt);

List of Time-Zone ID Strings: https://code2care.org/pages/java-timezone-list-utc-gmt-offset

Advertisements
Try Out Code2care Dev Tools:

Advertisements

Advertisements
Code2care is an initiative to publish and share varied knowledge in programming and technical areas gathered during day-to-day learnings and development activities.

Students and software developers can leverage this portal to find solutions to their various queries without re-inventing the wheel by referring to our easy to understand posts. Technical posts might include learnings, tutorials, trouble-shooting steps, video tutorials, code snippets, how-to, blogs, articles, etc.

🎉 We are celebrating the 10th years of Code2care! Thank you for all your support!

We strongly support Gender Equality & Diversity.