1

我正在尝试在我的 Android 应用程序中编译此代码示例以具有加密/解密功能。我在这里找到了该代码http://apachejava.blogspot.it/2012/04/androidencryption-made-easy.html我不知道它是否很好,但这与这里无关。

编译时一切正常,但Util.toByteArray会产生此错误“Util 无法解析”。用 Utils 替换 Util 没有任何用处。

有什么帮助吗?

4

1 回答 1

3

您链接的页面中缺少部分所需代码:作者忘记显示他的Util类,该类显然包含一个 toByteArray function

解决方案1:使用commons IO

代替

Util.toByteArray(cis);   

经过

IOUtils.toByteArray(cis);

IOUtils 是一个Apache 公共 IO实用程序类。

你需要

  • 下载commons IO jar(见链接)并相应地设置你的类路径
  • 在您的课程开始时进行此导入:import org.apache.commons.io.IOUtils;

解决方案 2:编写一个 toByteArray 函数

定义这个函数:

public byte[] toByteArray(InputStream is) throws IOException {
    ByteArrayOutputStream buffer = new ByteArrayOutputStream();
    int l;
    byte[] data = new byte[1024];
    while ((l = is.read(data, 0, data.length)) != -1) {
      buffer.write(data, 0, l);
    }
    buffer.flush();
    return buffer.toByteArray();
}

并替换Util.toByteArray(cis);toByteArray(cis);.

于 2012-07-18T11:23:30.767 回答