MD5在Java中的实现

MD5在Java中的实现,java,python,jakarta-ee,Java,Python,Jakarta Ee,我试图使用SubDB api为Java中的字幕查找器编写代码。因为我对python不太了解,所以我不明白他们在做什么来计算字符串的哈希值。散列是通过获取视频文件的第一个和最后一个64kb,将所有内容放在一起并生成结果数据的md5来组成的。name是文件名 def get_hash(name): readsize = 64 * 1024 with open(name, 'rb') as f: size = os.path.getsize(na

我试图使用SubDB api为Java中的字幕查找器编写代码。因为我对python不太了解,所以我不明白他们在做什么来计算字符串的哈希值。散列是通过获取视频文件的第一个和最后一个64kb,将所有内容放在一起并生成结果数据的md5来组成的。name是文件名

def get_hash(name):
        readsize = 64 * 1024
        with open(name, 'rb') as f:
            size = os.path.getsize(name)
            data = f.read(readsize)
            f.seek(-readsize, os.SEEK_END)
            data += f.read(readsize)
        return hashlib.md5(data).hexdigest()
有人能帮我用Java实现上述代码吗

有人能帮我用Java实现上述代码吗

提示:

  • 使用
    FileInputStream
    、其
    skip(long)
    方法以及两次调用其
    read(byte[],int,int)
    方法,可以轻松实现读取文件第一个和最后N个字节的代码。使用
    File.size()
    获取文件大小

  • 在Java中生成MD5校验和涉及到许多问题;e、 g


  • ,除非您编写一些代码并面临特定问题。我无法理解代码。我想我已经提过了。因为我对阅读文件不太熟悉,所以我认为这是一个相关的帮助。@thefourtheye那张照片吓了我一大跳:那你为什么不让别人给你解释一下代码呢?还是学习一点python?事实上,您可以在不了解python的情况下非常了解它在做什么。。。如果你能假设代码是正确的。