📋 目录
- ✨ 概述
- 多语言支持
- 📄 License
✨ 概述
本项目提供了使用哈基米64个字符集来创建哈基米风格编码的工具。哈基米64(Hachi64)使用64个中文字符,这些字符按发音相似性分组,使编码后的字符串看起来更加和谐统一 (没想到把。
🎯 字符集特点
|
🎪 适用场景
|
哈基米64字符集按发音相似性分组,共19个音组,64个字符:
|
哈音组 (3个) 哈、蛤、呵 |
吉音组 (6个) 吉、急、集、都、弥、济 |
米音组 (6个) 米、咪、迷 |
南音组 (6个) 南、男、难、囊、路、陆 |
|
北音组 (3个) 北、背、杯 |
绿音组 (3个) 绿、律、虑 |
豆音组 (4个) 豆、斗、抖、多 |
啊音组 (3个) 啊、阿、额 |
|
西音组 (3个) 西、希、息 |
嘎音组 (3个) 嘎、咖、伽 |
花音组 (3个) 花、华、哗 |
压音组 (3个) 压、鸭、呀 |
|
库音组 (3个) 库、酷、苦 |
奶音组 (3个) 奶、乃、耐 |
龙音组 (3个) 龙、隆、拢 |
曼音组 (3个) 曼、慢、漫 |
|
波音组 (3个) 波、播、玻 |
叮音组 (3个) 叮、丁、订 |
咚音组 (3个) 咚、东、冬 |
总计64个字符,发音分布相对平衡,编码结果具有良好的视觉和听觉和谐性。
⚠️ 注意: 使用哈基米字母表会使您编码的数据与标准 Base64 解码器不兼容。仅在您完全控制编码、解码过程以及猫猫时才使用此功能。
🚀 快速开始
# 示例: "Hello" 编码后的结果
输入: Hello
输出: 豆米啊拢嘎米多=选择您喜欢的编程语言,立即开始使用!👇
💻 多语言支持
| 语言 | 包管理器 | 版本 | 文档 |
| 🔷 C++ | Header-only | 📖 文档 | |
| 🟣 C# (.NET) | NuGet | 📖 文档 | |
| 🎯 Dart | pub.dev | 📖 文档 | |
| 🐹 Go | Go Module | 📖 文档 | |
| ☕ Java | Maven Central | 📖 文档 | |
| 🟨 JavaScript/TypeScript | npm | 📖 文档 | |
| 🟪 Kotlin | Maven (source) | 📖 文档 | |
| 🐘 PHP | Packagist | 📖 文档 | |
| 🐍 Python | PyPI | 📖 文档 | |
| 💎 Ruby | RubyGems | 📖 文档 | |
| 🦀 Rust | crates.io | 📖 文档 | |
| 🍎 Swift | SPM | 📖 文档 |
C++
// Header-only 库,只需包含头文件
#include "hachi64/hachi64.hpp"
std::string encoded = hachi64::encode({72, 101, 108, 108, 111}); // "豆米啊拢嘎米多="
std::vector<uint8_t> decoded = hachi64::decode(encoded); // "Hello"C# (.NET)
dotnet add package Hachi64 --version 0.1.0byte[] data = Encoding.UTF8.GetBytes("Hello");
string encoded = Hachi64.Encode(data); // "豆米啊拢嘎米多="
byte[] decoded = Hachi64.Decode(encoded); // "Hello"Dart
dependencies:
hachi64: ^0.1.1final encoded = Hachi64.encode(Uint8List.fromList(utf8.encode('Hello'))); // "豆米啊拢嘎米多="
final decoded = Hachi64.decode(encoded); // "Hello"Go
go get github.com/fengb3/Hachi64/go@v0.1.1encoded := hachi64.Encode([]byte("Hello"), true) // "豆米啊拢嘎米多="
decoded, _ := hachi64.Decode(encoded, true) // "Hello"Java
<dependency>
<groupId>io.github.fengb3</groupId>
<artifactId>hachi64</artifactId>
<version>0.1.0</version>
</dependency>String encoded = Hachi64.encode("Hello".getBytes(StandardCharsets.UTF_8)); // "豆米啊拢嘎米多="
byte[] decoded = Hachi64.decode(encoded); // "Hello"JavaScript/TypeScript
npm install hachi64@0.1.2import { encode, decode } from 'hachi64';
const encoded = encode(Buffer.from('Hello')); // "豆米啊拢嘎米多="
const decoded = decode(encoded); // "Hello"Kotlin
// 从源码构建或使用 mavenLocal
implementation("com.hachi64:hachi64:1.0.0")val encoded = Hachi64.encode("Hello".encodeToByteArray()) // "豆米啊拢嘎米多="
val decoded = Hachi64.decode(encoded).decodeToString() // "Hello"PHP
composer require hachi64/hachi64:0.1.2$encoded = Hachi64::encode("Hello"); // "豆米啊拢嘎米多="
$decoded = Hachi64::decode($encoded); // "Hello"Python
pip install hachi64from hachi64 import hachi64
encoded = hachi64.encode(b"Hello") # "豆米啊拢嘎米多="
decoded = hachi64.decode(encoded) # b"Hello"Ruby
gem install hachi64encoded = Hachi64.encode("Hello") # "豆米啊拢嘎米多="
decoded = Hachi64.decode(encoded) # "Hello"Rust
[dependencies]
hachi64 = "0.1.6"use hachi64::{encode, decode};
let encoded = encode(b"Hello"); // "豆米啊拢嘎米多="
let decoded = decode(&encoded)?; // b"Hello"Swift
dependencies: [
.package(url: "https://github.com/fengb3/Hachi64.git", from: "0.1.1")
]let encoded = Hachi64.encode("Hello".data(using: .utf8)!) // "豆米啊拢嘎米多="
let decoded = try Hachi64.decode(encoded) // "Hello"📄 License
This project is licensed under the MIT License - see the LICENSE file for details.