Jscape简历上传

时间:2015-05-01 15:43:15

标签: java sftp

我对com.jscape.inet.sftp.Sftp类中使用的简历上传方法有疑问。

根据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;
}

1 个答案:

答案 0 :(得分:0)

经过几次打击和试验,这里有几轮测试是我的结论。

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

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

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

我已多次测试我的代码,多次停止并使用简历上传,并将原始文件与上传的文件进行比较。没有差异,上次恢复上传在几秒钟内完成,从而确认它从完成的地方恢复而不是从头开始上传。