Yes, You Still Need to Specify a Character Set in Java 18+

Lately I’ve heard developers claim that it’s now OK to avoid specifying the character set when creating an InputStreamReader or String, or otherwise converting bytes into characters because Java now (JDK 18 and later) uses UTF-8 as its default character encoding regardless of platform.

Except we do still need to do it, for two independent reasons:

Read the rest of this entry »

XOM 1.4.0 Released. Now With Special LLM Sauce

I’ve released version 1.4.0 of XOM, my open source library for processing XML with Java. It’s available from the usual places including Maven Central (xom:xom:1.4.0) and https://xom.nu/. This is the first release coded with LLM assistance.

Read the rest of this entry »