栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 实现从互联网/url获取文件、转换为base64字符串、获取文件名、获取文件类型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 实现从互联网/url获取文件、转换为base64字符串、获取文件名、获取文件类型

import sun.misc.base64Encoder; // 注意别导错包了

public void invokeAddCuApplyRepairBill(RepairRequest repairRequest) {
    RepairOrder repairOrder = new RepairOrder();
    List imageList = new ArrayList<>();
    repairOrder.setCustomerId(repairRequest.getCustomerId());
    repairOrder.setAdress(repairRequest.getUserAddress());
    repairOrder.setCustomerMobile(repairRequest.getUserPhone());
    repairOrder.setContent(repairRequest.getRepairRemark());
    String[] repairImgs = repairRequest.getRepairImgs();
    byte[] data = null;
    base64Encoder encoder = new base64Encoder();
    for (String img: repairImgs) {
        RepairImage repairImage = new RepairImage();
        String urlPath = img;
        try {
            // 统一资源
            URL url = new URL(urlPath);
            // 连接类的父类,抽象类
            URLConnection urlConnection = url.openConnection();
            // http的连接类
            HttpURLConnection httpURLConnection = (HttpURLConnection) urlConnection;
            //设置超时
            httpURLConnection.setConnectTimeout(1000 * 5);
            //设置请求方式,默认是GET
            httpURLConnection.setRequestMethod("GET");
            // 设置字符编码
            httpURLConnection.setRequestProperty("Charset", "UTF-8");
            // 打开到此 URL引用的资源的通信链接(如果尚未建立这样的连接)。
            httpURLConnection.connect();
            // 建立链接从请求中获取数据
            BufferedInputStream bin = new BufferedInputStream(httpURLConnection.getInputStream());
            // 读取文件字节数组
            data = new byte[bin.available()];
            bin.read(data);
            bin.close();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        // 对字节数组base64编码
        String base64Data = encoder.encode(data);
        repairImage.setbase64Data(base64Data);
        String fileName = urlPath.substring(urlPath.lastIndexOf("/")+1);
        repairImage.setFileName(fileName);
        String fileType = urlPath.substring(urlPath.lastIndexOf("."));
        repairImage.setFileType(fileType);
        imageList.add(repairImage);
    }
    repairOrder.setRepairImageList(imageList);
    weidieService.addCuApplyRepairBill(repairOrder);
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/644473.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号