1

Android アプリでこのコードのサンプルをコンパイルして、暗号化/復号化機能を持たせようとしています。ここでそのコードを見つけましたhttp://apachejava.blogspot.it/2012/04/androidencryption-made-easy.html良いかどうかはわかりませんが、ここでは関係ありません。

コンパイルするときUtil.toByteArrayは問題ありませんが、「ユーティリティを解決できません」というエラーが発生します。Util を Utils に置き換えることは役に立ちません。

何か助けはありますか?

4

1 に答える 1

3

リンク先のページには必要なコードの一部がありません。作成者はUtil明らかに toByteArray を含むクラスを表示するのを忘れていましたfunction

解決策 1 : コモンズ IO を使用する

交換

Util.toByteArray(cis);   

IOUtils.toByteArray(cis);

IOUtils はApache commons 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 に答える