Как преобразовать значок в base64 в JavaJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как преобразовать значок в base64 в Java

Сообщение Anonymous »

Теперь я использую этот код для чтения изображения значка с диска:

Код: Выделить всё

  String fullImagePath = imageDiskPath + localIconUrl;
String extensionName = FilenameUtils.getExtension(localIconUrl);
BufferedImage img;
if("ico".equals(extensionName)){
img = Imaging.getAllBufferedImages(new File(fullImagePath)).get(0);
}else{
img = ImageIO.read(new File(fullImagePath));
}

if(img == null){
log.error("read image return home,url:" + fullImagePath);
return null;
}
ByteArrayOutputStream os = new ByteArrayOutputStream();

ImageIO.write(img, extensionName, os);
byte[] array = os.toByteArray();
if(ArrayUtils.isEmpty(array)){
log.error("array is null");
return null;
}
но когда я читаю изображение значка, результат ByteArrayOutputStream равен нулю. Это вывод отладки:
Изображение

Я делаю неправильно? что мне следует сделать, чтобы он прочитал значок и успешно конвертировался в bas64? Я использую этот пакет для чтения значка:

Код: Выделить всё

api group: 'org.apache.commons', name: 'commons-imaging', version: '1.0-alpha2'
Я тоже пробовал так:

Код: Выделить всё

img = Imaging.getBufferedImage(new File(fullImagePath));
все еще не работает.

Подробнее здесь: https://stackoverflow.com/questions/678 ... 64-in-java
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»