Мне нужно закодировать массив String в байтах, используя кодировку UTF-8. Я использую Google guava, он имеет класс Charsets, который уже определяет экземпляр Charset для кодировки UTF-8. У меня есть 2 способа сделать:
-
String.getBytes(charsetName)
try { byte[] bytes = my_input.getBytes ( "UTF-8" ); } catch ( UnsupportedEncodingException ex) { }
-
String.getBytes(объект Charset)
// Charsets.UTF_8 is an instance of Charset byte[] bytes = my_input.getBytes ( Charsets.UTF_8 );
Мой вопрос - какой из них я должен использовать? Они возвращают тот же результат. Для пути 2 - мне не нужно ставить try/catch! Я смотрю на исходный код Java, и я вижу, что путь 1 и путь 2 выполняются по-разному.
У кого-нибудь есть идеи?