I'd usually say fix to UTF-8 here and mention in docs and/or exception message. The last thing we need is behavior changing based on what Java thinks the default locale might be this week, and I'd be leery of trying multiple encodings because that we were able to find one that worked doesn't especially indicate that it was actually correct. But, in this case I guess it does depend on where this byte sequence is coming from: I don't know where it's being constructed originally (even on the same machine?). So, I'm happy to defer to your judgment.