Base64Helper.javaPaquetage : org.projectforge.framework.utils
Classes : Base64Helper
Méthodes (2) : decodeObject, encodeObject
Importations : 2 paquetages
package org.projectforge.framework.utils;
import org.apache.commons.codec.binary.Base64;
import java.io.*;
/*******************************************************************************************************************************************
* Helper pour encoder/décoder des objets sérialisables en représentation base64.
*
* @see java.io.ObjectInputStream
* @see java.io.ObjectOutputStream
* @author Wolfgang Jung (w.jung@micromata.de)
*
* TODO DESIGNBUG superflu
*/
public class Base64Helper
{
/*****************************************************************************************************************************************
* Convertit une représentation base64 donnée en un objet.
*
* @param base64object un objet encodé en base64
* @return l'objet désérialisé
* @throws IOException si la représentation base64 ne contient pas un objet
* @throws ClassNotFoundException si l'objet désérialisé ne peut pas être résolu
*/
public static Object decodeObject(String base64object) throws IOException, ClassNotFoundException
{
ObjectInputStream ois = new ObjectInputStream(
new ByteArrayInputStream(Base64.decodeBase64(base64object.getBytes())));
Object o = ois.readObject();
ois.close();
return o;
}
/*****************************************************************************************************************************************
* encode un objet en représentation base64
*
* @param obj un objet sérialisable
* @return la représentation sous forme de chaîne
* @throws IOException si l'objet n'est pas sérialisable
*/
public static String encodeObject(Object obj) throws IOException
{
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(obj);
oos.close();
return new String(Base64.encodeBase64(baos.toByteArray()));
}
}
868d6abb7 2025 -> 2026 63081666f En-têtes des fichiers source : 2024 -> 2025. b6092df09 Copyright 2023 -> 2024 ab45d51fa Copyright 2001-2022 -> 2001-2023. 5f7ef41b8 Copyright 2021 -> 2022