From fc588c6e5ccac038cab378931d9bac3033e28f98 Mon Sep 17 00:00:00 2001 From: yangys <y_ys79@sina.com> Date: 星期五, 04 七月 2025 11:29:16 +0800 Subject: [PATCH] 增加产品型号 --- blade-service/blade-mdm/src/main/java/org/springblade/mdm/utils/CustomBinaryReader.java | 37 +++++++++++++++++++++++++++++++++++++ 1 files changed, 37 insertions(+), 0 deletions(-) diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/utils/CustomBinaryReader.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/utils/CustomBinaryReader.java new file mode 100644 index 0000000..42b5eae --- /dev/null +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/utils/CustomBinaryReader.java @@ -0,0 +1,37 @@ +package org.springblade.mdm.utils; + +import java.io.*; +import java.util.Arrays; + +public class CustomBinaryReader { + /** + * 浠庤緭鍏ユ祦璇诲彇鏁版嵁鍒拌緭鍑烘祦 + * @param inputStream + * @param os + * @throws IOException + */ + public static void read(InputStream inputStream, OutputStream os) throws IOException { + byte[] buffer = new byte[1024]; + try (DataInputStream in = new DataInputStream( + new BufferedInputStream(inputStream))) { + + // 璇诲彇骞堕獙璇丮agic Number + byte[] magic = new byte[4]; + in.readFully(magic); + if (!Arrays.equals(magic, CustomBinaryWriter.MAGIC_NUMBER)) { + throw new RuntimeException("涓嶆槸鏈夋晥鐨勮嚜瀹氫箟鏂囦欢鏍煎紡"); + } + + // 璇诲彇鐗堟湰鍙� + short version = in.readShort(); + if (version > CustomBinaryWriter.VERSION) { + throw new RuntimeException("涓嶆敮鎸佺殑鐗堟湰: " + version); + } + + while(in.read(buffer) != -1){ + os.write(buffer); + } + + } + } +} -- Gitblit v1.9.3