ツール クラス: ローカル イメージまたはネットワーク イメージをバイト ストリームに変換する

package com.vxdata.gym.common;

import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;

public class ImgToByteUtil {
    
    

    /**
     * 获取本地图片转成字节流
     */
    public static byte[] getLocalImgByUrl(String filePath) {
    
    
        try {
    
    
            // 通过输入流获取图片数据
            InputStream inputStream = new FileInputStream(filePath);
            // 得到图片的二进制数据
            byte[] btImg = readInputStream(inputStream);
            return btImg;
        } catch (Exception e) {
    
    
            e.printStackTrace();
        }
        return null;
    }


    /**
     * 获取网络图片转成字节流
     *
     * @param strUrl 完整图片地址
     * @return 图片资源数组
     */
    public static byte[] getNetImgByUrl(String strUrl) {
    
    
        try {
    
    
            URL url = new URL(strUrl);
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("GET");
            conn.setConnectTimeout(2 * 1000);
            // 通过输入流获取图片数据
            InputStream inStream = conn.getInputStream();
            // 得到图片的二进制数据
            byte[] btImg = readInputStream(inStream);
            return btImg;
        } catch (Exception e) {
    
    
            e.printStackTrace();
        }
        return null;
    }

    /**
     * 从输入流中获取字节流数据
     *
     * @param inStream 输入流
     * @return 图片流
     */
    private static byte[] readInputStream(InputStream inStream) throws Exception {
    
    
        ByteArrayOutputStream outStream = new ByteArrayOutputStream();
        // 设置每次读取缓存区大小
        byte[] buffer = new byte[1024 * 10];
        int len = 0;
        while ((len = inStream.read(buffer)) != -1) {
    
    
            outStream.write(buffer, 0, len);
        }
        inStream.close();
        return outStream.toByteArray();
    }

    /**
     * 测试
     *
     * @param args
     */
    public static void main(String[] args) {
    
    
        String url = "D:/vxdata/uploadPath/upload/2022/04/08/0dd55a37-9fe7-45da-b1ee-4efa14044b3d.jpg";
        System.out.println(getLocalImgByUrl(url));
    }

}

おすすめ

転載: blog.csdn.net/qq_44154912/article/details/124609539