问题标签 [apache-commons-codec]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2781 浏览

eclipse - 为什么方法 Base64.encodeBase64String(byte) 不可用

您好,我的项目构建路径中包含来自官方网页的 apache commond codec 1.7 .jar,但是 Base64.encodeBase64String(byte当我编写代码时该方法不可用。我已经使用旧版本的 jar(1.5、1.6)进行了测试,但没有任何效果。

谢谢!

0 投票
1 回答
2443 浏览

java - 如何以及为什么对 PDF 和 Excel 文件进行 Base 64 编码?

我读过的 Base64 编码的应用是将二进制数据或某些字符串转换为 Base64 格式。但是我知道文件(例如:PDF、Excel)本身是 Base64 编码的,它们甚至无法被相应的软件打开/支持。

我的问题是:

  1. 我们可以将整个文件编码为 Base64。
  2. 这是什么应用场景。
  3. 我们可以通过查看内容来知道要使用哪个解码器。

(仅供参考:我已阅读 wiki Base64 )

0 投票
3 回答
4323 浏览

grails - 公共编解码器的未解决依赖关系

我正在尝试检索 Google Reporting API 的库:

但我得到了一个未解决的依赖错误,我不知道如何处理它:

我检查了 .grails\ivy-cache\ 文件夹,有一个 commons-codec 文件夹,里面有 commons-codec-1.5 的 jars,一些 xml 文件 ivy-1.5.xml 和 ivy-1.6.xml 以及 ivydata-1.5.properties 和 ivydata- 1.6.属性。我也尝试删除整个 ivy-cache 文件夹,但结果是一样的。

0 投票
1 回答
5783 浏览

java - java中的Apache通用编解码器从字符串到十六进制,反之亦然

我正在尝试以十六进制编码字符串,然后将其再次转换为字符串。为此,我使用的是 apache 通用编解码器。特别是我定义了以下方法:

奇怪的是,我在转换回来时没有得到相同的初始字符串。更奇怪的是,我得到的字节数组,与字符串的初始字节数组不同。我写的小测试程序如下:

输出示例如下:

还有另一种奇怪的行为。字节数组([B@1afe17b)不是固定的,但与代码的运行不同,但我不明白为什么。

0 投票
0 回答
421 浏览

scala - Scala 编译器错误 - sha256 不是 DigestUtils 的成员 - 为什么 1.6 可以工作,但 1.9-SNAPSHOT 不能?

引发编译器错误:

但是当我去看文档时,它显然是一个返回字节数组的静态方法。

当我使用:

相同的代码有效。我究竟做错了什么?

0 投票
2 回答
12276 浏览

java - Commons 编解码器中的 Base64.decode(privateKeyString, Base64.DEFAULT)

使用 Android 的Base64,可以做到这一点:Base64.decode(privateKeyString, Base64.DEFAULT). 如果您使用的是 Apache 的 Commons Codec,则此功能不可用。如何使用 Commons Codec 获得相同的结果?

0 投票
1 回答
945 浏览

java - NoSuchMethodError:Android 上的 org.apache.commons.codec.binary.Base64.decode

我在使用 commons-codec-1.9 的 Android api 19 中的一个简单应用程序上遇到了这个异常。似乎 Android 使用旧的 commons-codec 库,但我无法弄清楚,因为。

我正在使用 Android Studio,我的 gradle 文件包含以下内容:

我有一个例外:

谢谢

0 投票
1 回答
600 浏览

java - Sha1 散列字符串在 mysql 中正确编码,但显示为 Java 字符串不同

我目前正在使用 Dao 模式开发一个与 mysql 数据库相结合的 java 程序。我有一些用户信息要存储在表中,并且我正在存储原始密码字符串的 Sha1 散列版本。我正在使用 apache.commons.codec.digest.DigestUtils 来做到这一点。php-mysql 中显示的字符串是完美的,但是当我尝试在 java 测试程序中显示相同的字符串时,我得到了完全不同的结果。

这是我的用户对象的构造函数:

因此,例如,当使用“aff”作为密码创建用户时,通过

我在 mysql 中得到“0c05aa56405c447e6678b7f3127febde5c3a9238”,看起来正确,与在线 sha1 哈希器的输出相同。

但是,当将数据读回对象并通过 java 中的 Sysout(User.getPassword()) 显示时,我得到“c14b77e8930a8bfd884c8917f2b7335501a39dde”,这显然不一样。

知道是什么原因造成的吗?我已经阅读了一些关于 Byte[] 问题的先前帖子,但据说 DigestUtils.sha1Hex(password) 方法返回一个纯字符串。那么我错过了什么?

0 投票
1 回答
2731 浏览

java - BouncyCastle 和 Apache Commons Codec Base64 编码之间的区别

我想了解一下 BouncyCastle 提供的 Base64 编码机制和 Apache Commons Codec 提供的等效机制是否完全兼容,或者是否存在兼容性问题。

我正在开发一个 Java 库,它在一些输入和输出上使用 Base64 编码(它必须对一些输入进行编码,并对它的一些输出进行编码)。这个库使用来自 Bouncy Castle 的 Base64 编码器。

将使用此库的应用程序之一将使用来自 Apache commons 的 Base64 编码器在其一侧执行编码和解码。

我相信 Apache 的实现遵循 RTC 标准,但是 Bouncy Castle 的实现并不遵循这个标准,尽管它在很大程度上遵循相同的标准。这个组件之间会不会有兼容性问题?

仅在需要相互通信的组件中使用相同的 Base64 编码器是否明智?

0 投票
1 回答
293 浏览

java - Base64InputStream 中只有一个字节可用

我有一个String(我认为)是一系列字节的 base64 表示。我正在尝试使用org.apache.commons.codec.binary.Base64InputStream. 然而,显然这个流只有一个字节可用。

该字符串是使用 a 生成的Base64OutputStream,原始字节数组的长度为 398 字节。

我不太了解我在做什么,但我认为Base64InputStream应该有 398 个字节可用,不是吗?我究竟做错了什么?

输出: