简单的数组操作字符串,加密可用

类别:.NET开发 点击:0 评论:0 推荐:

Public Function ary(str)
   Dim a()
   Dim b()
   Dim lenstr        '字符串长
   Dim i, j          '循环变量
   Dim ouflag
   lenstr = Len(str)
   If lenstr Mod 2 = 1 Then
       '长度为奇
       ouflag = False
       lenstr = lenstr + 1
       ReDim a(2, lenstr / 2)
       a(2, lenstr / 2) = Chr(20) '最后一个补空格
   Else
       '长度为偶
       ReDim a(2, lenstr / 2)
       ouflag = True
   End If
   ReDim b(lenstr / 2, 2)
   For i = 1 To lenstr
       If i <= lenstr / 2 Then
           a(1, i) = Mid(str, i, 1)
       Else
           If ouflag = True Then
               a(2, i - lenstr / 2) = Mid(str, i, 1)
           Else
               If i <> lenstr Then
                   a(2, i - lenstr / 2) = Mid(str, i, 1)
               End If
           End If
       End If
   Next
   For i = 1 To 2
       For j = 1 To lenstr / 2
           b(j, i) = a(i, j)
       Next
   Next
   For j = 1 To lenstr / 2
       For i = 1 To 2
           ary = ary & b(j, i)
       Next
   Next
   If ouflag = False Then
       ary = Left(ary, lenstr - 1)
   End If
End Function
Public Function unary(str)
   Dim a()
   Dim b()
   Dim lenstr        '字符串长
   Dim i, j          '循环变量
   Dim ouflag
   lenstr = Len(str)
   If lenstr Mod 2 = 1 Then
       '长度为奇
       ouflag = False
       lenstr = lenstr + 1
       ReDim a(lenstr / 2, 2)
       a(lenstr / 2, 2) = Chr(20) '最后一个补空格
   Else
       '长度为偶
       ReDim a(lenstr / 2, 2)
       ouflag = True
   End If
   ReDim b(2, lenstr / 2)
   For i = 1 To lenstr
       If i = lenstr And ouflag = False Then
           a(lenstr / 2, 2) = " "
       Else
           If i Mod 2 = 1 Then
               a((i + 1) / 2, 1) = Mid(str, i, 1)
           Else
               a(i / 2, 2) = Mid(str, i, 1)
           End If
       End If
   Next
   For i = 1 To 2
       For j = 1 To lenstr / 2
           b(i, j) = a(j, i)
       Next
   Next
   For i = 1 To 2
       For j = 1 To lenstr / 2
           unary = unary & b(i, j)
       Next
   Next
   If ouflag = flag Then
       unary = Left(unary, lenstr - 1)
   End If
End Function

用了你就知道用处了:
dim strg
strg="123456789"
strg=ary(strg)


unary是解密

本文地址:http://com.8s8s.com/it/it42774.htm