如何通过学习Rust实战系列课程全面提升编程技能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1284个文字,预计阅读时间需要6分钟。
前言:在一些只能使用ASCII字符的场景中,往往需要传输非ASCII字符的数据。这时,就需要一种编码方式将数据转换成ASCII字符。Base64编码就是这样一种编码方式。
编码原理:Base64编码原理非常简单,将原始数据每3个字节分成一组,然后每组转换成4个ASCII字符。
前言某些只能使用ASCII字符的场景,往往需要传输非ASCII字符的数据,这时就需要一种编码可以将数据转换成ASCII字符,而base64编码就是其中一种。
编码原理很简单,将原始数据以3字节(24比特)为一组均分成4份,每部分6比特共64种组合,每种组合转换成对应字符,最后拼接起来即可。若最后一组不够3字节则后面用0补齐,转换后补齐多少字节就用几个“=”字符表示。
上面大致描述了base64编码的场景及原理,具体细节不做探讨,本文主要描述用rust实现时涉及的rust知识点。
标准输出读取程序的数据是从标准输入(stdin)中读取的,使用std::io::stdin()返回实现Read特性(trait)的Stdin结构体,调用Read特性read函数即可从标准输出读取数据,例子如下。
let buf: [u8; 300] = [0; 300];
let size = stdin().read(&buf).unwrap();
read使用一个u8类型数组用作从标准输入接收数据的缓存,接收到的字节数以包裹在Result中的usize类型返回,这里简单地使用unwrap()解包获取字节数。
本文共计1284个文字,预计阅读时间需要6分钟。
前言:在一些只能使用ASCII字符的场景中,往往需要传输非ASCII字符的数据。这时,就需要一种编码方式将数据转换成ASCII字符。Base64编码就是这样一种编码方式。
编码原理:Base64编码原理非常简单,将原始数据每3个字节分成一组,然后每组转换成4个ASCII字符。
前言某些只能使用ASCII字符的场景,往往需要传输非ASCII字符的数据,这时就需要一种编码可以将数据转换成ASCII字符,而base64编码就是其中一种。
编码原理很简单,将原始数据以3字节(24比特)为一组均分成4份,每部分6比特共64种组合,每种组合转换成对应字符,最后拼接起来即可。若最后一组不够3字节则后面用0补齐,转换后补齐多少字节就用几个“=”字符表示。
上面大致描述了base64编码的场景及原理,具体细节不做探讨,本文主要描述用rust实现时涉及的rust知识点。
标准输出读取程序的数据是从标准输入(stdin)中读取的,使用std::io::stdin()返回实现Read特性(trait)的Stdin结构体,调用Read特性read函数即可从标准输出读取数据,例子如下。
let buf: [u8; 300] = [0; 300];
let size = stdin().read(&buf).unwrap();
read使用一个u8类型数组用作从标准输入接收数据的缓存,接收到的字节数以包裹在Result中的usize类型返回,这里简单地使用unwrap()解包获取字节数。

