同一张发票图片Win10上生成的base64调用接口返回正常,Linux环境上面生成的Base64调用报错,生成的base64跟开发环境的不一样。

public static String getbase64Url(String imgFile) {
        System.out.println("本地地址 imgFile:" + imgFile);
        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();
        }

        // return new BASE64Encoder().encode(data);
        return new BASE64Encoder().encode(Objects.requireNonNull(data));
    }

 

你有没有考虑过是Windows和Linux编码格式的不同呢

应该不会吧.我以前做过.只要区分两者图片存储路径的写读,就没问题啊