这几天忙着写一个用于数据同步的Java程序,在这里遇到了一个令人头大的问题。
问题是这样:我的数据同步程序要同时跑四个线程,在其中的一个线程中,要做一个MD5的文件校验工作。这个MD5的校验是要通过调用一个dll来实现,这个dll(名字叫做MD5Operation.dll)是用于对文件内容进行MD5运算的,目的是用于做服务器端和客户端的文件校验。
类MD5Tool的源代码如下:
package com.hode.util;
public class MD5Tool
{
public static native String hMd5( String szFilePath);
static
{
System.loadLibrary( "MD5Operation" );
}
}
我声明了一个静态的本地方法hMD5,这样我在程序中就可以直接用MD5Tool.hMD5(filePathName)来调用了,经过我的简单测试,程序运行正常。
测试代码如下:
package com.hode.util
public class TestMD5
{
public static void main(String[] args)
{
String filePathName = "C://my music//heal the world.mp3";
String fileMD5Str = MD5Tool.hMD5(filePathName);
System.out.printl