使用md5检查文件的完整性

时间:2011-12-01 07:03:20

标签: java android md5 inputstream

我正在尝试检查资产文件夹中数据库文件的完整性,我在Android应用中使用 this 代码。

我不知道将InputStream直接转换为字符串

是否正确

我的问题是,在此代码中如何转换资源文件夹中的文件字符串。

我试过BufferdReader为

  AssetManager am = getResources().getAssets();
  String as = null;
InputStream is=null;
StringBuilder sb = new StringBuilder();
try {
    is=am.open("sdapk.db");
    BufferedReader br= new BufferedReader(new InputStreamReader(is));

     while ((as=br.readLine())!=null) {
          sb.append(as + "\n");
        }
     is.close();

}catch(IOException e) {
    Log.v("Error_E",""+e);
}
String  res = md5(sb.toString());

但没有运气

请对此有所了解并指导我正确的方向。

谢谢!

1 个答案:

答案 0 :(得分:0)

\ n可能会更改导致不同MD5的原始内容。有些系统使用\ r进行回车。 您应该直接使用输入流

byte[]b=new byte[1024];
while(is.read(b)!=-1){
 //do your magic here with b
}