Jscape简历上传

Jscape Resume Upload

我对 com.jscape.inet.sftp.Sftp class.

中使用的简历上传方法有疑问

根据API,在下面的方法中,第二个参数是localFileOffset

resumeUpload(java.lang.String localFile, long localFileOffset)

localFileOffset是怎么计算出来的?我假设 localFileOffset 应该是继续上传的起点,这基本上是已经上传的文件的文件大小(以字节为单位)。

如下所示:

Boolean isRemoteFileAvailable = sftp.isValidPath(uploadDir + "/" + RemoteFileName);

if (isRemoteFileAvailable)
{
    remoteFileSize = sftp.getFilesize(rrFileName);
    localFileOffset = remoteFileSize;
}

经过多次点击和试用,经过几轮测试,这是我的结论。

根据 API 以下是方法定义: resumeUpload(java.io.File localFile, long localFileOffset)

如果您使用 localFileOffset,它将是(本地文件大小 - 远程文件大小),您最终会丢失数据。

第二个参数绝对不是本地文件偏移量,而是以字节为单位的远程文件大小,计算方式为 sftp.getFilesize(remoteFile);

我通过多次停止和使用恢复上传来测试我的代码,并将原始文件与上传的文件进行比较。没有区别,最后一次恢复上传在几秒钟内完成,从而确认它是从完成的地方恢复,而不是从头开始上传。