From c4a8185f1268e8c66c3dae2c65db8f905952c6e1 Mon Sep 17 00:00:00 2001 From: luo <2855143437@qq.com> Date: 星期三, 27 九月 2023 21:16:36 +0800 Subject: [PATCH] 9.26。13 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/three/Base64Coder.java | 26 ++++++++++++++++++-------- 1 files changed, 18 insertions(+), 8 deletions(-) diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/three/Base64Coder.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/three/Base64Coder.java index be8cd9c..d1bd814 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/three/Base64Coder.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/three/Base64Coder.java @@ -26,16 +26,18 @@ char_array_4[1] = (byte) (((char_array_3[0] & 0x03) << 4) + ((char_array_3[1] & 0xf0) >> 4)); char_array_4[2] = (byte) (((char_array_3[1] & 0x0f) << 2) + ((char_array_3[2] & 0xc0) >> 6)); char_array_4[3] = (byte) (char_array_3[2] & 0x3f); - for (i = 0; (i < 4); i++) + for (i = 0; (i < 4); i++) { retContent += base64_alphabet[char_array_4[i]]; + } i = 0; } } // handling the last input content if (i > 0) { - for (j = i; j < 3; j++) + for (j = i; j < 3; j++) { char_array_3[j] = 0; // padding of zero + } char_array_4[0] = (byte) ((char_array_3[0] & 0xfc) >> 2); // right // shift @@ -43,12 +45,15 @@ char_array_4[2] = (byte) (((char_array_3[1] & 0x0f) << 2) + ((char_array_3[2] & 0xc0) >> 6)); char_array_4[3] = (byte) (char_array_3[2] & 0x3f); - for (j = 0; (j < i + 1); j++) + for (j = 0; (j < i + 1); j++) { retContent += base64_alphabet[char_array_4[j]]; + } while ((i++ < 3)) // padding of '=' of output string + { retContent += '='; + } } return retContent; @@ -68,33 +73,38 @@ mLength--; char_array_4[i++] = data[enCode++]; if (i == 4) { - for (i = 0; i < 4; i++) + for (i = 0; i < 4; i++) { char_array_4[i] = findChar((char) char_array_4[i]); + } char_array_3[0] = (byte) ((char_array_4[0] << 2) + ((char_array_4[1] & 0x30) >> 4)); char_array_3[1] = (byte) (((char_array_4[1] & 0xf) << 4) + ((char_array_4[2] & 0x3c) >> 2)); char_array_3[2] = (byte) (((char_array_4[2] & 0x3) << 6) + char_array_4[3]); - for (i = 0; (i < 3); i++) + for (i = 0; (i < 3); i++) { retContent += (char) char_array_3[i]; + } i = 0; } } // last content handling if (i > 0) { - for (j = i; j < 4; j++) + for (j = i; j < 4; j++) { char_array_4[j] = 0; + } - for (j = 0; j < 4; j++) + for (j = 0; j < 4; j++) { char_array_4[j] = findChar((char) char_array_4[j]); + } char_array_3[0] = (byte) ((char_array_4[0] << 2) + ((char_array_4[1] & 0x30) >> 4)); char_array_3[1] = (byte) (((char_array_4[1] & 0xf) << 4) + ((char_array_4[2] & 0x3c) >> 2)); char_array_3[2] = (byte) (((char_array_4[2] & 0x3) << 6) + char_array_4[3]); - for (j = 0; (j < i - 1); j++) + for (j = 0; (j < i - 1); j++) { retContent += (char) char_array_3[j]; + } } return retContent; -- Gitblit v1.7.1