Есть ли разница между Apache Base64.encodeBase64 и Android Base64.encode с флагом Base64.Default?

Пример A (с использованием org.apache.commons.codec.binary.Base64):

Base64.encodeBase64("foobar".getBytes()); 

Пример B (с использованием android.util.Base64):

Base64.encode("foobar".getBytes(), Base64.DEFAULT); 

Они производят одну и ту же строку?

Ответ 1

Нет, разница в том, что с настройками по умолчанию Android Base64 включает терминаторы строк. Чтобы получить тот же результат, что и при кодировании Apache, используйте Base64.NO_WRAP.