Base64解码有"%"在结果有时候。应该是结果吗?任何解决方案?

时间:2014-04-19 23:50:41

标签: linux encoding base64

我正在研究base64编码和解码算法并尝试一些程序。我在网上找到了一些示例代码,但结果对我来说有点奇怪。 这是链接:http://knol2share.blogspot.com/2011/07/base64-encoding-and-decoding-in-c.html

我试图用它来编码和解码一个字符串 输入一个字符串: 02613
Base64编码值:MDI2MTM =
Base64解码值:02613% - 我不知道为什么会出现"%",有没有办法获得正确的结果

我甚至在linux中尝试过Base64程序,并在删除编码中的换行符后得到了相同的结果。

结果如下: %echo -n 02613 | base64
MDI2MTM =
%echo -n MDI2MTM = | base64 - 解码
02613%

有谁知道如何用输入字符串得到完全相同的结果?谢谢。

2 个答案:

答案 0 :(得分:4)

如果解码后的文本不以换行符结尾,则会打印出来。

$ printf "foobar\n" | base64 | base64 --decode
foobar
$ printf "foobar" | base64 | base64 --decode
foobar%

答案 1 :(得分:1)

%符号不是命令提示符吗? 解码后的b64后添加新行并检查。