我正在尝试将本机应用程序文件从我的电脑上传到嵌入式 linux 设备。我已经使用 base64 编码对文件进行了编码。我通过 websocket 连接成功地将编码文件发送到 linux 设备。文件原封不动地收到了。
然后我尝试使用 base64.c/.h 库解码 base64 编码的数据。解码数据与原始文件不匹配。
我认为它真的爆炸了。
现在我已经通过对文本文件进行编码和解码来检查过程,没有任何问题,所以过程很好。
我也在网上验证了编码数据是正确的
另一个有趣的点是,主要的在线解码器也不能正确解码它,除了https://base64.guru/converter/decode/file.
那里有不同的方法,但它没有说明它的作用,我怀疑它可能是使用更高级的语言和库来完成的,但它在幕后,并且知道以不同方式完成的指示。我联系了管理员但没有回复。
我的想法是该文件适用于专有应用程序并具有专有扩展名,而且当仅在文本文件中查看时,数据不是文本,也不像大多数应用程序特定文件那样是人类不可读的。
所以我的问题是我需要做什么才能在 c 中正确解码这样的文件?
有没有具体的解码文件的算法或方法?
这是来自大师网站的成功文件解码的图片。