| | |
| | | package com.ruoyi.common.utils; |
| | | |
| | | import java.io.ByteArrayOutputStream; |
| | | import java.io.InputStream; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; |
| | | import com.ruoyi.doublePrevention.entity.CJReport.PreventCJReportRiskAnaUnit; |
| | | import com.ruoyi.doublePrevention.entity.ZDReport.HandlerZDReportParam; |
| | | import com.ruoyi.doublePrevention.entity.ZDReport.PreventZDReportRiskAnaUnit; |
| | | import com.ruoyi.doublePrevention.enums.SyncEnum; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | import java.io.*; |
| | | import java.net.HttpURLConnection; |
| | | import java.net.URL; |
| | | import java.nio.charset.StandardCharsets; |
| | | import java.util.ArrayList; |
| | | import java.util.Base64; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | @Slf4j |
| | | public class ImageToBase64 { |
| | | |
| | | public static String convertImageToBase64(String imageUrl) { |
| | |
| | | |
| | | } |
| | | |
| | | |
| | | public static void main(String[] args) { |
| | | pushFourColorPicture(); |
| | | } |
| | | |
| | | public static String convertImageToBase64local(String imagePath) throws IOException { |
| | | File file = new File(imagePath); |
| | | FileInputStream imageInFile = new FileInputStream(file); |
| | | |
| | | // 读取文件为字节数组 |
| | | byte[] imageData = new byte[(int) file.length()]; |
| | | imageInFile.read(imageData); |
| | | |
| | | // 使用 Base64 编码 |
| | | return Base64.getEncoder().encodeToString(imageData); |
| | | } |
| | | |
| | | |
| | | public static void convertBase64ToImage(String base64Data, String outputPath) throws IOException { |
| | | // 去除 Base64 数据的前缀(如果有) |
| | | if (base64Data.startsWith("data:image")) { |
| | | base64Data = base64Data.split(",")[1]; |
| | | } |
| | | |
| | | // 解码 Base64 数据为字节数组 |
| | | byte[] imageBytes = Base64.getDecoder().decode(base64Data); |
| | | |
| | | // 写入字节数组到图片文件 |
| | | try (FileOutputStream imageOutFile = new FileOutputStream(outputPath)) { |
| | | imageOutFile.write(imageBytes); |
| | | } |
| | | } |
| | | |
| | | public static void pushFourColorPicture() { |
| | | HttpURLConnection con = null; |
| | | BufferedReader buffer = null; |
| | | int responseCode = 200; |
| | | |
| | | StringBuffer unitResultBuffer = null; |
| | | //上报数据 |
| | | try { |
| | | |
| | | URL url = new URL( "http://218.31.50.112:8087/api/wwyt/t_qyfxfbxx_List"); |
| | | con = (HttpURLConnection) url.openConnection(); |
| | | |
| | | // 设置请求方式和参数 |
| | | con.setRequestMethod("POST"); |
| | | con.setDoOutput(true); |
| | | con.setDoInput(true); |
| | | con.setUseCaches(false); |
| | | con.setRequestProperty("token", "030B6744-EECB-4732-B679-280373E7E575"); |
| | | con.setRequestProperty("Content-Type", "application/json; charset=UTF-8"); |
| | | |
| | | JSONObject jsonObject = new JSONObject(); |
| | | jsonObject.put("ID", "mn25kwer-8956-34hj-3sdl-dl980lcfdc8a"); |
| | | jsonObject.put("IMG", convertImageToBase64local("D:\\1751424343390.png")); |
| | | jsonObject.put("CREATE_TIME", "20220501000000"); |
| | | jsonObject.put("UPDATE_TIME", "20250701000000"); |
| | | jsonObject.put("DELETE_MARK", "0"); |
| | | jsonObject.put("CREATE_BY", "李康"); |
| | | jsonObject.put("UPDATE_BY","李康"); |
| | | JSONArray jsonArray = new JSONArray(); |
| | | jsonArray.add(jsonObject); |
| | | |
| | | // 发送请求体 |
| | | try (OutputStream os = con.getOutputStream()) { |
| | | os.write(JSON.toJSONString(jsonArray).getBytes(StandardCharsets.UTF_8)); |
| | | } |
| | | responseCode = con.getResponseCode(); |
| | | //本段日志,测试成功后,可注释掉 |
| | | if (responseCode == HttpURLConnection.HTTP_OK) { |
| | | //得到响应流 |
| | | InputStream inputStream = con.getInputStream(); |
| | | //将响应流转换成字符串 |
| | | unitResultBuffer = new StringBuffer(); |
| | | String line; |
| | | buffer = new BufferedReader(new InputStreamReader(inputStream, "UTF-8")); |
| | | while ((line = buffer.readLine()) != null) { |
| | | unitResultBuffer.append(line); |
| | | } |
| | | System.out.println("上传四色图:" + unitResultBuffer); |
| | | |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | } |