У меня был такой же сценарий, я не очень хорошо знаком со сценарием создания Excel и типом формата char, но в обычном случае он будет работать ..
byte[] bytes = new sun.misc.BASE64Decoder().decodeBuffer(encodeData);
try (FileOutputStream fos = new FileOutputStream(filePath)) {
fos.write(bytes);
}
Также, пожалуйста, избегайте закодированной строки для двоичных файлов, для обычного текстового файла можно оборачиваться в зашифрованную строку, но в случае большого двоичного файла это займет много времени. Вместо строки используйте массив байтов.