admin管理员组

文章数量:1558099

根据Javadoc,android.util.Base64.decode()有两个参数:文本和“标志”。这些标志是INT形式和(我引述):android.util.Base64编码/解码标志参数

flags controls certain features of the decoded output. Pass DEFAULT to decode standard Base64.

首先,感谢给谁就给谁决定写一个模糊的Javadoc。我看到Base64有一些枚举字符串,实际上,我们一直使用Base64.NO_WRAP作为我们的标志。然而,在这个特定的实例中,我们需要使用两个标志:NO_WRAP和URL_SAFE。

我们如何指定两个标志?我们尝试用管道('|')将它们分开,并且没有这样做。

import android.util.Base64;

public class Foo {

public static void main(String[] args) {

String urlSafeBase64EncodedString = getUrlSafeBase64EncodedString();

int flags = ????????; //Need both Base64.NO_WRAP and Base64.URL_SAFE

String decodedString = Base64.decode(urlSafeBase64EncodedString, flags);

}

}

谢谢你的时间。

2012-02-24

Cody S

+0

“那没有做到” - 那它做了什么? (你究竟写了些什么*)如果你要抱怨其他人含糊不清,它有助于确保你自己:) –

2012-02-24 18:33:35

+0

它没有做任何事情。它无法解码Base64字符串。我已经说过了,我用管道符号分隔了两个标志......那怎么不完全清楚? –

2012-02-24 18:38:02

+0

完全有可能您的语法错误,例如“Base64.NO_WRAP | URL_SAFE”。那当然会产生汇编错误......这也会被“没有这样做”所涵盖。现在“它没有做任何事情”和“它无法解码Base64字符串”并不完全相同。 *它是如何解码失败的?有没有例外,它是否给出了空洞的结果,它挂了吗? –

2012-02-24 18:42:34

本文标签: 参数标志androidutil