java - 使用 apache 通用编解码器库在解码器上获取无效数据

标签 java ssl encode pkcs#12

我有一个场景,我将我的 pkcs12 证书内容作为编码字符串(appache 通用编解码器库)获取。现在我必须解码该字符串并将其存储在文件中。但是在将其解码为字符串时,我得到了无效的证书内容。

当我尝试在文件中写入字节时,它工作正常。请在下面找到我尝试过的片段。

对于编码:

Base64.encodeBase64String(certcontentInBytes[])

解码:

new String(Base64.decodeBase64(certstringContent));

最佳答案

new String(bytes) 实际上是 new String(bytes, defaultCharset) 使用字节的字符集将字节转换为 Unicode 字符串。不可移植且可能有错误的字符集。

对于字节作为二进制数据是行不通的。字符串不应用于二进制数据。我敢打赌 bytes 已写入文件。

关于java - 使用 apache 通用编解码器库在解码器上获取无效数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55651007/

相关文章:

c - C中的SMS PDU编码

javascript - 正则表达式中的 encodeURIComponent

java - Java 的内置函数 Collections.frequency(list, element) 的复杂性是什么?

java - 将 CSV 文件导入 MySQL 表

java - 怎么解决?。线程 "main"java.lang.UnsatisfiedLinkError : Can't find dependent libraries 中出现异常

java - Ant 的运行时类路径找不到 javac 的依赖项

delphi - 使用 Indy + SSL + 代理发布

authentication - 带有 Jetty 连接器的 ReSTLet 2.0.8 不会恢复 SSL session ,而 Simple 连接器会

c# - 在 Azure Web 角色中为 WCF 端点添加额外的 SSL 行为

python - 如何从列表中删除 unicode 中的\xa0