防止 CRLF 的 iOS Base64 Lib

发布于 2024-12-27 08:09:04 字数 614 浏览 1 评论 0原文

由于包含 CRLF,我在解码/编码 Base64 字符串时遇到问题。 我已经尝试过这个库 Base64.h 和这个<一href="http://colloquy.info/project/browser/trunk/NSDataAdditions.h?rev=1576" rel="nofollow">NSData+Base64.h 但两者都这样做不能很好地处理CRLF

以前有人遇到过这个问题吗?

有人对如何避免这些 CRLF 有建议吗?我认为 Android 的 Java lib 正在用“0”替换它,我说得对吗?

public static final int CRLF = 4;

I'm having troubles decoding/encoding a base64 string because of the CRLF on it.
I've tried this lib Base64.h and this one NSData+Base64.h but both do not handle well the CRLF.

Anyone had this problem before?

Anyone has an advice on how to avoid these CRLF? I think Android's Java lib is replacing this with a '0', am I correct?

public static final int CRLF = 4;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

懒的傷心 2025-01-03 08:09:04

Base64 编码 64 个字符,即“A-Za-z0-9+/”,可能带有尾随“=”以指示非 mod 3 长度。 CR+LF可以作为行分隔符,一般对每一行单独解码。

有关 CR+LF 变体的更多信息,请参阅 Wikipedia Base64

“+vqbiP7s3oe7/puJ8v2a3fOYnf3vmpap”
解码后是:
“FA FA 9B 88 FE EC DE 87 BB FE 9B 89 F2 FD 9A DD F3 98 9D FD EF 9A 96 A9”
最后一个字符不为0。

Base64 encodes 64 characters, namely 'A-Za-z0-9+/' with a possible trailing '=' to indicate a non mod 3 length. CR+LF may be used as a line separator, generally decode each line separately.

See Wikipedia Base64 for more information on CR+LF variants.

"+vqbiP7s3oe7/puJ8v2a3fOYnf3vmpap"
decoded is:
"FA FA 9B 88 FE EC DE 87 BB FE 9B 89 F2 FD 9A DD F3 98 9D FD EF 9A 96 A9"
The last character is not 0.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文