[聚合文章] 编码转换工具 (C#入门)

.Net 2018-01-03 34 阅读

一直想写一些图形化工具来用。从小入手,写了个计算器,看了下代码,有点麻瓜。

工具:编码转换工具
编译:VS2015 C#(.NET Framework v4.0)

先看一下效果图:

其中有个bug,就是 ASCii 不归零,也不知道是怎么回事。

默认的 textBox 获取方式为 Encoding.Default.GetBytes(str) ,注意的是要使用 UTF8 ,代码有些丑陋,就不贴了。

在写到 Base32 的时候,没找到现成的方法可以直接利用,所以就去了解了下、

Base32 是由 ABCDEFGHIJKLMNOPQRSTUVWXYZ234567 组成的,由于 01 由于与字母 OI 相似性而被跳过。

规则:

任意给定一个二进制数据,以5个位(bit)为一组进行切分(base64以6个位(bit)为一组)
对切分而成的每个组进行编码得到1个可见字符。

演示:(以 rcoil 字符串进行编码)

字符rcoil取ASCII码之后,对其转换成二进制(切5补0)得到
01110,01001,10001,10110,11110,11010,01011,01100
计算每组二进制对应的十进制,然后参考Base32编码表,组成密文

具体的算法就是这样,有了流程就可以写代码了。

后来找了找,能找到一些别人已经写好的类。 Base32 Decoding ,直接利用就可以了。

注:本文内容来自互联网,旨在为开发者提供分享、交流的平台。如有涉及文章版权等事宜,请你联系站长进行处理。