摩斯码编解码器
Posted guokun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了摩斯码编解码器相关的知识,希望对你有一定的参考价值。
1、背景
今天是1024,程序员节那就干点儿程序员的事情。刚好,记得上高中时候,看过一部电影,无间道,里边黄秋生和梁朝伟用摩斯码通信,瞬间觉得好神秘,好帅气。最近闲来无事,出于对当初兴趣的尊敬,就顺手实现了一款简易的摩斯编解码器。
2、编解码设计
自己玩儿,暂定中文摩斯编码。基本思想是,将汉字对应的四位区位码数字分别编码为数字对应的摩斯码,一个中文对应20位摩斯码。解码过程逆向。
3、代码实现
首先,项目结构图如下:
因为是个小工具,整个项目采用WPF实现。
主界面:
就核心过程而言,编码分两步:
1、汉字转区位码
此算法是直接抄的,原始出处,有点儿懒得费功夫找了,再次声明,不是在下原创。
/// <summary> /// 汉字转区位码方法 /// </summary> /// <param name="chinese">汉字</param> /// <returns>区位码</returns> public static string ChineseToCoding(string chinese) { string pCode = ""; byte[] pArray = new byte[2]; pArray = Encoding.GetEncoding("GB2312").GetBytes(chinese);//得到汉字的字节数组 int front = (short)(pArray[0] - ‘