Go语言工资水平是多少

 go语言工资水平是多少?这个其实完全取决于自己,从5K、10K、20K不等,你掌握的技术越精致,越广泛,你的工资水平越高,所以先开启你的学习之旅吧!

字符编码解码

9.1.1 Base64

Base64就是一种基于64个可打印字符来表示二进制数据的方法。Base64使用了26个小写字母、26个大写字母、10个数字以及两个符号(例如“+”和“/”),用于在电子邮件这样的基于文本的媒介中传输二进制数据。Base64通常用于编码邮件中的附件。

Base64字符集如下所示。

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Base64的编码过程如图所示。

图9.1 Base64

步骤说明如下。

l 将每个字符转成ASCII编码(10进制)

l 将10进制编码转成2进制编码

l 将2进制编码按照6位一组进行平分

l 将6位一组的2进制数高位补零,然后转成10进制数

l 将10进制数作为索引,从Base64编码表中查找字符

l 每3个字符的文本将编码为4个字符长度(3*8=4*6)若文本为3个字符,则正好编码为4个字符长度; 若文本为2个字符,则编码为3个字符,由于不足4个字符,则在尾部用一个“=”补齐;若文本为1个字符,则编码为2个字符,由于不足4个字符,则在尾部用两个“=”补齐,如图所示。

图9.2 Base64编码补齐

接下来通过一个案例演示Base64编码解码,如例所示。

例1-1 Base64

1 package main

2 import (

3  "encoding/base64"

4  "fmt"

5 )

6 func main() {

7  str := "心怀不惧,方能翱翔于天际"

8  cipherText := Base64EncodeString(str)

9  fmt.Println("base64 编码后:",cipherText)

10  fmt.Println("base64 解码后:",Base64DecodeString(cipherText))

11 }

12 func Base64EncodeString(str string) string {

13  return base64.StdEncoding.EncodeToString([]byte(str))

14 }

15 func Base64DecodeString(str string) string {

16  result, _ := base64.StdEncoding.DecodeString(str)

17  return string(result)

18 }

运行结果如图所示。

 

图9.3 运行结果

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值