0

csvファイルのチェックサムを計算する必要があります。チェックサムは、ファイル内のデータが変更されるたびに変更されます。私はこの点でインターネット上で何も役に立たなかった。

4

1 に答える 1

2

まず第一に、この問題はJSPに固有のものではありません。JSPは単なるHTMLコードジェネレータです。通常のJavaクラスの代わりにJSPファイルでJavaコードを記述しても、JSPの問題にはなりません。「JSP」キーワードを使用せずに「Java」キーワードを使用して将来のJavaの問題を解決することに集中すれば、さらに役立つでしょう。

そうは言ってもMessageDigest、ファイルから読み取ったバイトで更新するものを使用するだけです。

FileInputStream input = new FileInputStream("/path/to/file.csv");
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] buffer = new byte[10240];

for (int length = 0; (length = input.read(buffer)) > 0;) {
    md5.update(buffer, 0, length);
}     

byte[] hash = digest.digest();

後でハッシュを16進数に変換することをお勧めします。

StringBuilder hex = new StringBuilder(hash.length * 2);

for (byte b : hash) {
    if ((b & 0xff) < 0x10) {
        hex.append("0");
    }

    hex.append(Integer.toHexString(b & 0xff));
}

String hexString = hex.toString();
于 2012-05-29T16:15:46.620 に答える