Maison > Java > javaDidacticiel > Java implémente la conversion entre les images et l'encodage base64 (exemple)

Java implémente la conversion entre les images et l'encodage base64 (exemple)

青灯夜游
Libérer: 2018-09-26 11:28:50
original
5927 Les gens l'ont consulté

本章给大家带来Java实现图片与base64编码的互相转换(实例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

废话不多说了,直接就给大家上java实现图片与base84字符串之间的互相转换代码了,具体代码如下所示:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

import java.io.FileOutputStream; 

import java.io.IOException; 

import java.io.InputStream; 

import java.io.OutputStream; 

import sun.misc.BASE64Decoder; 

import sun.misc.BASE64Encoder; 

public class Base64Test  

    public static void main(String[] args) 

    

        String strImg = GetImageStr(); 

        System.out.println(strImg); 

        GenerateImage(strImg); 

    

    //图片转化成base64字符串 

    public static String GetImageStr() 

    {//将图片文件转化为字节数组字符串,并对其进行Base64编码处理 

        String imgFile = "D:\\tupian\\a.jpg";//待处理的图片 

        InputStream in = null; 

        byte[] data = null; 

        //读取图片字节数组 

        try  

        

            in = new FileInputStream(imgFile);         

            data = new byte[in.available()]; 

            in.read(data); 

            in.close(); 

        }  

        catch (IOException e)  

        

            e.printStackTrace(); 

        

        //对字节数组Base64编码 

        BASE64Encoder encoder = new BASE64Encoder(); 

        return encoder.encode(data);//返回Base64编码过的字节数组字符串 

    

       

    //base64字符串转化成图片 

    public static boolean GenerateImage(String imgStr) 

    {   //对字节数组字符串进行Base64解码并生成图片 

        if (imgStr == null) //图像数据为空 

            return false; 

        BASE64Decoder decoder = new BASE64Decoder(); 

        try  

        

            //Base64解码 

            byte[] b = decoder.decodeBuffer(imgStr); 

            for(int i=0;i<b.length;++i) 

            

                if(b[i]<0) 

                {//调整异常数据 

                    b[i]+=256; 

                

            

            //生成jpeg图片 

            String imgFilePath = "D:\\tupian\\new.jpg";//新生成的图片 

            OutputStream out = new FileOutputStream(imgFilePath);     

            out.write(b); 

            out.flush(); 

            out.close(); 

            return true; 

        }  

        catch (Exception e)  

        

            return false; 

        

    

}

Copier après la connexion

以上就是图片与base64编码互相转换的全部代码,大家可以自己动手试试。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal