アルゴリズムを使用して、XMLファイルから取得した可変長であるが非常に長い文字列フィールドをエンコードしようとしています。その場合、エンコードされたデータはデータベースに保持されます。
後で、2番目のファイルを受け取ったときに、エンコードされたデータをデータベース(以前に保存されたもの)からフェッチし、それをデコードして、新しいデータで重複を検証する必要があります。
org.apache.commons.codec.binary.Base64
私はそれが2つのメソッドを持っているクラスを試しました:
encodeBase64(Byte[] barray)
decodeBase64(String str)
これは完全にうまく機能し、私の問題を解決します。ただし、55文字の文字列を6文字の文字列に変換します。
したがって、これらのアルゴリズムが、非常に大きく、(たとえば)1文字の不一致しかない2つの文字列を同じエンコードされたバイト配列にエンコードする場合があるのではないかと思います。
私はクラスについてあまり知りBase64
ませんが、誰かが私を助けることができればそれは本当に役に立ちます。
大きな文字列を固定長より短くし、私の目的を解決する他のアルゴリズムを提案できれば、私はそれを喜んで使用します。
前もって感謝します。