import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import com.sun.org.apache.xerces.internal.impl.dv.util.Base64; public class Base64Inverse { public static void main(String[] args) throws Exception { String image ="C:\\tt1.txt"; decoderImage(image,"E:\\Garden.jpg"); System.out.println("Bien décodé"); } private static void decoderImage(String image, String string) throws IOException { String fichier = string; String img = readFile(image); byte[] buffer = Base64.decode(img); writeFile(buffer,fichier); } private static String readFile(String filename) { // lecture du fichier texte String chaine=""; try{ InputStream ips=new FileInputStream(filename); InputStreamReader ipsr=new InputStreamReader(ips); BufferedReader br=new BufferedReader(ipsr); String ligne; while ((ligne=br.readLine())!=null){ chaine+=ligne; } br.close(); } catch (Exception e){ System.out.println(e.toString()); } return chaine; } private static void writeFile( byte[] tab,String fichier) throws IOException { File file = new File(fichier); BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(file)); bos.write(tab); bos.close(); } }