Base62x編解碼開源類庫增長C++版本

2020年以來近兩個月來,新冠肺炎 疫情肆虐中華大地,九洲同悲,四海恐慌,惟望炎黃子孫同仇敵愾,將傳染性病毒早日隔離並捕獲進牢籠,打入十八層地獄,永世不得翻身!html

自我囚禁之餘,安排時間對-Base62x 編解碼程序進行翻閱,同時考慮並增長了 Base62x 編解碼程序的 C++版本。python

這是繼2016年增長 Base62x in Java, 2017年增長 Base62x in JavaScript, 2018年增長 Base62x in Perl, 2019年增長 Base62x in Python以後的又一個新語言版本,此後,C++的應用項目,能夠直接下載使用便可。Base62x 編解碼的實現,首先是C語言版本。npm

距離上次新增並完善Base62x in Python 已經有差很少一年的時間,在這期間, Base62x 獲得更普遍的應用和部署,也在 -Github 上得到更多的點贊。這是使人欣慰的。編程

Base62x in C++ 的程序代碼包括兩部分:安全

  1. Base62x.class.hpp
    這是 Base62x 的C++版本的主體程序,用於構建 Base62x 對象及其兩個主要方法: encode/decode .
    另外還有一些輔助工具方法.
  2. Base62x_test.cpp
    是爲測試 Base62x in C++ 而編寫的輔助程序,主要給出調用 Base62x in C++的樣例。

    Base62x in C++的使用樣例網絡

    # include 「Base62x.class.hpp」app

    using namespace std;
    //- init.
    Base62x myb62x;
    char *input = 「Hello Base62x!\n」;
    char *output;
    int ibase = 0; // zero for string
    //- encode
    output = myb62x.encode(input, ibase);
    //- decode
    int obase = ibase
    input = myb62x.decode(output, obase);編程語言

藉助 C++ (C with class)的面向對象支持,Base62x in C++幾乎能夠借用 Base62x in Java的邏輯和 Base62x in C的代碼,融合而成便可。ide

截止目前(2020年2月),Base62x 已經能夠提供的編程語言版本包括 C, Java, PHP, JavaScript, Perl, Python, C++.
其中Base62x in JavaScript 還有兩個實現, Base62x.class.js 和npm base62x.工具

2019年,Base62x 的相關說明內容還沒寫入網上各個主要知識Wiki站點,由此也傳播給更多的人。此外,Base62x 論文相關的輔助材料也發佈在 -ResearchGate 上,可供免費翻閱。與此同時,還完善了 -Base62x 的官方網頁,讓在線編解碼體驗、瀏覽和翻閱更簡便快捷。

籍此,感謝爲 Base62x 的源代碼和說明文檔作出貢獻的朋友們,他們的名字都記載在 -Github的代碼庫裏或者知識Wiki站點裏,謝謝大家!

最好的版本永遠是下一個版本,繼續期待 Base62x 能爲技術同行們帶來幫助,也期待一塊兒修改訂正,使其日益完善。



Base62x: An alternative approach to Base64 for only-alphanumeric characters in output.
Base62x is an non-symbolic Base64 encoding scheme. It can be used safely in computer file systems, programming languages for data exchange, internet communication systems, and is an ideal substitute and successor of many variants of Base64 encoding scheme.

Base62x 是一種無符號的Base64編碼方案。
在計算機文件系統、編程語言數據交換、互聯網絡通訊系統中能夠安全地使用,同時是各類變種Base64編碼方案的理想替代品、繼任者。

base62x-algorithm

-R/q2SW

相關文章
相關標籤/搜索