Hàm để mã hóa các ký tự

Liên hệ QC

vietcnttit

Thành viên mới
Tham gia
14/6/10
Bài viết
43
Được thích
5
Ví dụ tôi đang có chuỗi bất kì: sdjhkjhf237_fdsjkjlHHJ
Tôi muốn dùng hàm để chuyển chuỗi này thành 1 dãy số theo phương pháp bất kì (miễn sao thành chuỗi số là được)
Vd: 2317947958795894378978567895 (số này đánh đại để vd)

E đã thử dùng hàm chuyển từng kí tự sang số theo mã unicode sau đó ghép lại mà k được, e cũng dùng cách mã hoá chuỗi theo hex mà cũng k xong, các trang nước ngoài k ai có thông tin này.

Đau đầu quá trời cả ngày rui mà vẫn chưa tìm ra cách tối ưu. Mong các anh chị nhiệt tình giúp đỡ. Chân thành cám ơn!!
 
Lần chỉnh sửa cuối:
2/ Cách dịch chiều thuận, từ mệnh đề tiếng Việt không dấu thành chuỗi số
(Nếu bạn nào cần biết hàm tạo ra các chìa khóa của bài trên, ta đến đây: http://www.giaiphapexcel.com/forum/showthread.php?54095-Giúp-Mã-hoá-chuỗi-ký-tự-thành-số-để-bảo-mật )

Sau khi ta có chìa khóa, ta dùng hàm này để mã hóa cho nhanh các đoạn văn bản:

PHP:
Function MaHoaABC0(StrC As String, ChiaKhoa As String)
 Dim J As Integer, VTr As Byte, Hg As Byte, Cot As Byte
 Dim Tmp As String, MaKhoa As String
 Const KT As String = " "
 
 StrC = UCase$(Trim(StrC)) & KT
 MaKhoa = HV6x6(ChiaKhoa)
 For J = 1 To Len(StrC)
    Tmp = Mid(StrC, J, 1)
    If Tmp <> KT Then
        VTr = InStr(MaKhoa, Tmp)
        If VTr Then
            Cot = VTr Mod 6:    If Cot = 0 Then Cot = 6
            Hg = VTr \ 6 + 1
            MaHoaABC0 = MaHoaABC0 & CStr(Hg) & CStr(Cot)
        Else
            MaHoaABC0 = MaHoaABC0 & "? "
        End If
    Else
        MaHoaABC0 = MaHoaABC0 & KT
    End If
 Next J
End Function

Cách sử dụng:

Tại 1 ô trống nào đó trên trang tính excel ta nhập cú fáp:
=MaHoaABC0(H1,"VIET NAM")
(Tại ô H1 ta đang có chuỗi cần mã hóa có nội dung "Giai Phap Excel Sang Tuoi Thu 7"& "Viet nam" là từ khóa dùng để rèn tạo ra chìa khóa)

Ta sẽ thấy hàm trả về kết quả:

35122212 51412251 1362321344 54222135 14554512 144155 66

Nếu đọc kỹ trong hàm tự tạo, ta sẽ thấy hàm không tạo ra các ký số 0; Mỗi kí tự trong mệnh đề cần mã hóa được biểu diễn bỡi 2 kí số, kí số đầu chỉ ra nhóm 6 số mà kí tự đó đang đứng & kí số sau là thứ tự của vi trí kí tự cần mã hóa đang đứng trong nhóm

Cụ thể hơn, chìa khóa 'Viet nam' có nội dung là "VIET01NAM234BCDFG5HJKLO6PQRSU7WXYZ89"
Như vậy chữ 'G' (từ đầu tiên cần mã hóa) thuộc nhóm thứ 3 & thứ tự trong nhóm là 5

HV6x6 là gì vậy Bác.
 
Upvote 0
Trong bài đã có đường dẫn rồi mà chú mầy!

[Thongbao]HV6x6 là gì vậy Bác.[/Thongbao]
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom