1

dot net3.5apiを使用してデータの計算crc32を実装する方法。次のコードを使用してJavaで同じことを行いました。

   public static String getMAC (byte [] value) {  
    java.util.zip.CRC32 crc32 = new java.util.zip.CRC32 ();
    crc32.update(value);
    long newCRC = crc32.getValue();
    String crcString = Long.toHexString(newCRC);
    try {
        crcString = ISOUtil.padleft(Long.toHexString(newCRC), 8, '0');
    }
    catch (Exception e){
        e.printStackTrace();
    }

    if (ISOConstantsLibrary.DEBUG) System.out.println("for hex string: " + ISOUtil.hexString(value) + "\nmac" + crcString);        
    } 
4

2 に答える 2

1

.NET FCLはjava.util.zip.CRC32のようなクラスを提供しないため、独自のクラスを作成する必要があります。それは難しいことではありません、そこにいくつかのまともな例があります:

例1 例2

于 2009-11-18T13:36:25.987 に答える
1

.NETライブラリには標準のCRC32アルゴリズムはありません。このような他の実装を使用できます。また、Crc32を使用するための特定の要件がない場合(たとえば、整合性をチェックするためにチェックサムを計算する必要がある場合)、Crc32Cを使用することをお勧めします。このアルゴリズムは最新のCPUで実行できるため、通常、ネイティブ実装の10倍、またはマネージド実装の20倍から60倍高速です。

于 2016-11-01T12:10:27.613 に答える