luo
2023-09-27 c4a8185f1268e8c66c3dae2c65db8f905952c6e1
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;