Encoding 编码-这个函数是什么?

Encoding 编码-这个函数是什么?,encoding,Encoding,我正在移植和更新一个旧的应用程序,我遇到了这个功能。我想知道更多,但我不知道它叫什么。我想它有一个流行的名字。有人知道吗 这个版本是用Python编写的,尽管它最初是用Java编写的 def encode(msg): # msg is a string msg_len = len(msg) j = (msg_len + 6) / 7 k = 0 cbytesOutput = [ctypes.c_byte(0)]*(msg_len + j) # return is msg le

我正在移植和更新一个旧的应用程序,我遇到了这个功能。我想知道更多,但我不知道它叫什么。我想它有一个流行的名字。有人知道吗

这个版本是用Python编写的,尽管它最初是用Java编写的

def encode(msg): # msg is a string

  msg_len = len(msg)
  j = (msg_len + 6) / 7
  k = 0

  cbytesOutput = [ctypes.c_byte(0)]*(msg_len + j) # return is msg length + j bytes long

  for l in xrange(j):
    i1 = l * 8
    j1 = i1
    byte0 = ctypes.c_byte(-128)
    byte1 = ctypes.c_byte(1)
    k1 = 0
    while k1 < 7 and k < msg_len:
        byte2 = ctypes.c_byte(ord(msg[k]))
        if (byte2.value & 0xffffff80) != 0:
            byte0 = ctypes.c_byte(byte0.value | byte1.value)
        j1 += 1
        cbytesOutput[j1] = ctypes.c_byte(byte2.value | 0xffffff80)
        byte1 = ctypes.c_byte(byte1.value << 1)
        k += 1
        k1 += 1

    cbytesOutput[i1] = byte0

  return cbytesOutput
def encode(msg):#msg是一个字符串
msg_len=len(msg)
j=(msg_len+6)/7
k=0
cbytesOutput=[ctypes.c_byte(0)]*(msg_len+j)#返回的是msg length+j字节长
对于X范围内的l(j):
i1=l*8
j1=i1
字节0=ctypes.c_字节(-128)
字节1=ctypes.c_字节(1)
k1=0
当k1<7和kbyte1=ctypes.c_byte(byte1.value)它可能是base64编码吗?任何示例输入输出对?看起来像是一种SMTP友好编码,将每个符号编码为7位。可能是UTF-7,但我不能保证。