我需要将本地文件与远程文件进行比较以获得差异。目前,我已检查修改时间和大小差异,但是,这不会涵盖与文件的差异。
当前代码:
for (String dm : remoteMods) {
Long remoteTime = (long) sftpChannel.stat(pack + "/" + dm).getMTime() * 1000;
Long localTime = new File(minecraftInst + dm).lastModified();
Long remoteSize = sftpChannel.stat(pack + "/" + dm).getSize();
Long localSize = new File(minecraftInst + dm).length();
if (remoteTime.longValue() != localTime.longValue() || remoteSize.longValue() != localSize.longValue()) {
System.out.println("Downloading: " + minecraftInst + dm);
sftpChannel.get(pack + "/" + dm, minecraftInst + dm);
new File(minecraftInst + dm).setLastModified(remoteTime);
}
}
这适用于zip文件,但是它不适用于文本文件。谢谢你提前。