Android:编译错误Util.toByteArray(摘自一个例子)

我试图在我的Android应用程序中编译此代码示例以具有crypt / decryptfunction。 我发现这里的代码http://apachejava.blogspot.it/2012/04/androidencryption-made-easy.html我不知道它是否好,但这里没有关系。

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

有帮助吗?

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

解决方案1:使用commons IO

更换

 Util.toByteArray(cis); 

通过

 IOUtils.toByteArray(cis); 

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

你需要

  • 下载commons IO jar(参见链接)并相应地设置类路径
  • 这个导入在你的类的开头: import org.apache.commons.io.IOUtils;

解决方案2:编写toByteArray函数

定义此function:

 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); by toByteArray(cis);